Django でメッセージをコンパイルしようとすると、次のようなエラーが発生します。
sh: msgfmt: command not found
一方、bash (ターミナル) からは、これらのコマンドはすべて正常に動作します。Pycharm を変更して、 sh の代わりに bash からこれらのコマンドを実行するにはどうすればよいですか?
ありがとう
この問題はツールをインストールすることで解決できますgettext
。debian/ubuntu で実行できます。Windowsについてはdjango docsudo apt-get install gettext
で説明されています。
同じエラーメッセージが表示されましたが、別の原因があり、この方法で解決しました。
実際、PyCharm 自体はこれらのコマンドを実行するために sh または bash を使用しません。設定 | 設定で構成されたインタープリターを使用して、manage.py Python スクリプトを実行します。Python インタープリター。compilemessages コマンドは os.system() Python 関数を使用して msgfmt コマンドを実行します。os.system() 関数は、常に /bin/sh を使用する system() C 関数を実行します。
したがって、/bin/sh から msgfmt を実行できるように OS を構成する必要があります。