找不到msguniq。确保安装了GNU gettext工具0.15或更新版本。 (Django 1.8和OSX ElCapitan)

时间:2016-01-30 12:34:49

标签: python django macos gettext osx-elcapitan

我正在尝试通过遵循精彩的Django文档来国际化Django应用程序。问题是当我尝试运行命令来创建语言文件时:

python manage.py makemessages -l fr

输出错误:

CommandError: Can't find msguniq. Make sure you have GNU gettext tools 0.15 or newer installed.

我的配置:

  • OS: OSX El Capitan v10.11.3
  • Python: v3.5
  • Django: v1.8

4 个答案:

答案 0 :(得分:25)

使用终端

安装带有Homebrew的gettext GNU工具
  1. 安装Homebrew/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
  2. 安装GNU gettext:brew install gettext
  3. 创建符号链接:brew link gettext --force

答案 1 :(得分:5)

如果您尝试运行link gettext --force,它会向您发出警告:

  

请注意,这样做会影响构建软件。

最安全的使用方法是在路径中添加gettext二进制文件:

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

答案 2 :(得分:1)

对于 Windows

  1. 下载gettext并安装

  2. 添加系统变量路径:C:\Program Files\gettext-iconv\bin(如果您在安装过程中没有添加)

  3. 在您的项目目录中检查或创建 locale/

  4. 检查或添加settings.pyLOCALE_PATHS = (BASE_DIR + 'locale/', )

享受django-admin makemessages -l fr。如果仍然重复,请不要忘记重新启动 shell 以更新环境变量

答案 3 :(得分:1)

首先在根项目文件夹中创建名为 locale 的目录,然后运行

sudo apt install gettext