django i18n: Assurez-vous que vous avez des outils GNU gettext
J'essaie django-admin.py makemessages -l zh_CN
mais a erreur :
CommandError: Can't find msguniq. Make sure you have GNU gettext tools 0.15 or newer installed.
après je utiliser brew install gettext,il toujours se tromper.
Dois-je faire quelque chose? voici mon terminal capture d'écran
Merci de me guider merci.
source d'informationauteur user2492364
Vous devez vous connecter pour publier un commentaire.
Pour les utilisateurs de Mac, après l'installation de Homebrew et gettext @Louis Barranqueiro dit (étapes 1 et 2):
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install gettext
Vous ne devriez pas utiliser
brew link gettext --force
à l'étape 3, parce que c'est risqué (comme Brew conseille si vous essayez). Une meilleure solution consiste à définir un nouveauPATH variable
pour votre environnement virtuel. Ainsi, dans lepostactivate
fichier, qui est situé dans le dossier bin de votre environnement virtuel dossier, type:Noter que vous devez remplacer
0.19.7
par la version qui est installée sur votre ordinateur.Et dans votre
predeactivate
fichier, qui est situé dans le même dossier depostactivate
fichier, tapez:Maintenant, vous pouvez utiliser le
python manage.py makemessages -l <desired_language>
sans soucis. 🙂Acclamations.
Cette procédure a fonctionné pour moi (OSX 10.11.2 - python v3.5 et Django 1.8)
Il devrait travailler avec votre configuration.
Installer GNU gettext outils avec Homebrew à l'aide de Terminal
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install gettext
brew link gettext --force
Dans Ubuntu:
Cette solution a fonctionné pour moi ( win. Les 7, 8 et 10 )
Vous devez télécharger deux dossiers:
Vous pouvez les trouver ici.
Après le téléchargement, décompressez-les et ajoutez-le répertoire du fichier bin de la les deux dossiers pour les variables système
PATH
de votre pc.Vous aurez également besoin d'un fichier nommé libstdc++-6.dll le télécharger à partir de ici et le placer dans votre répertoire système. Vous trouverez des détails adéquats sur le système de répertoire ici.
Et c'est tout. J'espère que c'est utile pour vous.
Si vous utilisez du poisson coque, une autre façon est d'ajouter ce chemin à
$fish_user_paths
.Cette variable est ajoutée à$PATH
de sorte que vous n'avez pas à mettre dans tous vos projets.Vous pouvez faire avec la ligne de commande suivante :
N'oubliez pas de remplacer
0.19.8.1
avec votregettext
version.Ce jeux de
$fish_user_paths
Universelle Variable. Voici ce quehelp
dit à propos de l'Universel Variables :Donc la définition de cette variable dans votre shell une fois (pas besoin de le faire dans un fichier de config) sauvera même après la déconnexion ou le redémarrage.
@max-malysh's réponse résolu pour moi —sans toucher au système de fichiers.
Copier et exécuter les opérations suivantes:
GETTEXT_PATH="/usr/local/Cellar/gettext/0.19.8.1/bin"
magasins gettext_path dans une variable du shell —adapter le numéro de version en fonction de cebrew install gettext
FILE="venv/bin/activate"
stocke le chemin d'accès à la venv script shellecho "" >> $FILE
ajoute une ligne vide à la fin de la assurez-vous que la prochaine commande est sur sa propre ligneecho "export PATH=\$PATH:$GETTEXT_PATH" >> $FILE
ajoute une commande à la venv script shell; cette commande ajoute le chemin d'accès à gettext binaires pour le mondial$PATH
variable, de sorte qu'ils sont utilisés avant d'OS binaires.source venv/bin/activate
exécute le venv shell script, de sorte que les variables sont correctement définis. Vous pouvez exécuter cette commande plus d'une fois.le problème il est fait allusion dans la sortie de
brew
...il a installé GNU gettext, mais n'est pas lié à votre répertoire bin parce que OSX propose déjà une version différente de gettext...
donc Django ne sait pas exécuter la version que vous avez installé à partir de l'infusion.
apparemment infusion est trop prudent ici et il vous suffit de le relier https://stackoverflow.com/a/9787791/202168