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

Lou*_*iro 18 python django macos gettext osx-elcapitan

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

python manage.py makemessages -l fr
Run Code Online (Sandbox Code Playgroud)

它输出一个错误:

CommandError: Can't find msguniq. Make sure you have GNU gettext tools 0.15 or newer installed.
Run Code Online (Sandbox Code Playgroud)

我的配置:

  • 操作系统:OSX El Capitan v10.11.3
  • Python:v3.5
  • Django:v1.8

Lou*_*iro 32

使用Terminal安装带有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


小智 23

对于Windows

  1. 下载gettext并安装

  2. 添加系统变量 PATH:(C:\Program Files\gettext-iconv\bin如果安装时没有添加)

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

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

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

  • 请在 winodws CMD 中运行命令(按 windows+r 然后输入“cmd”)。在 VS Code 中,终端无法工作。 (8认同)

Bam*_*ier 19

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

    sudo apt install gettext
Run Code Online (Sandbox Code Playgroud)


Vla*_* T. 6

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

请注意,这样做会干扰构建软件.

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

export PATH="/usr/local/opt/gettext/bin:$PATH"
Run Code Online (Sandbox Code Playgroud)