ブログ

BLOG

poファイルをmoファイルに変換するときにmsgfmtコマンドないよって言われたときの対処法

poファイルをmoファイルに変換するときにmsgfmtコマンドないよって言われたときの対処法

WordPressのプラグインを作るときに、言語設定をしていたが、moファイルがうまくコンパイルされなかった。今回はその解決法を残しておきます。

poファイルとmoファイル

poファイルとmoファイルは普段の日本だけをターゲットにしたサイトなどだと、あまり見たいこともないかもしれないが、これらが翻訳する際に必要となるファイルたちです。(実際はmoファイルがあればよい)

poファイル

基本的にどう翻訳するかを書くファイル。

moファイル

poファイルからコンパイルして作るファイル。基本的にこのファイルを直接変更することはない。

moファイルのコンパイル方法

moファイルは基本的にpoファイルからコンパイルされると書きました。コンパイルの方法は下記のコードを打ちます。

msgfmt {poファイル} -o {moファイル}

※{poファイル}、{moファイル}それぞれには任意のファイル名をつけてください。

例えば、こんな感じです。

msgfmt ja.po -o ja.mo

これを打つとできるはず、なんですが私の場合はうまくいきませんでした。

msgfmt: command not found

そんなコマンドねえよって言われてまいました。

gettextを入れていなかった

原因の1つとしてあげられるのは、gettextを入れていなかったかららしい。参考としてこの記事に書いていることをしてみた。
Macで翻訳ファイル*.poをmo形式に変換する – Qiita

ということでgettextをインストールすることに。Homebrewを使っているのでそこからインストールすることにした。

brew install gettext

インストールしたらPATHを通さないといけないみたいなので

vim ~/.bashrc

を打って下記のコードをコピペする。(Macの場合)

export PATH=/usr/local/opt/gettext/bin:$PATH

んで、追加したコードを反映させるために再実行させる。

source ~/.bashrc

再度、moファイルを作成

msgfmt ja.po -o ja.mo

いけた。

お問い合わせ・ご相談CONTACT

オクワスでは、Webを通して魅力を最大限に伝えるお手伝いをしております。ホームページ制作やWebからの集客などでのお困りごと、Web開発で人手が足りないなどございましたら一度お気軽にご連絡ください。

お問い合わせフォームまたは𝕏のDMからご相談お受けしております。

お問い合わせフォームへDMからご連絡ください
© 2015 - 2024 Okuda Kouki