J'ai fait Sudo pip install -U nltk
comme suggéré par la documentation nltk . Cependant, je reçois le résultat suivant:
Collecting nltk
Downloading nltk-3.0.5.tar.gz (1.0MB)
100% |████████████████████████████████| 1.0MB 516kB/s
Collecting six>=1.9.0 (from nltk)
Downloading six-1.9.0-py2.py3-none-any.whl
Installing collected packages: six, nltk
Found existing installation: six 1.4.1
DEPRECATION: Uninstalling a distutils installed project (six) has been deprecated and will be removed in a future version. This is due to the fact that uninstalling a distutils project will only partially uninstall the project.
Uninstalling six-1.4.1:
Exception:
Traceback (most recent call last):
File "/Library/Python/2.7/site-packages/pip/basecommand.py", line 211, in main
status = self.run(options, args)
File "/Library/Python/2.7/site-packages/pip/commands/install.py", line 311, in run
root=options.root_path,
File "/Library/Python/2.7/site-packages/pip/req/req_set.py", line 640, in install
requirement.uninstall(auto_confirm=True)
File "/Library/Python/2.7/site-packages/pip/req/req_install.py", line 716, in uninstall
paths_to_remove.remove(auto_confirm)
File "/Library/Python/2.7/site-packages/pip/req/req_uninstall.py", line 125, in remove
renames(path, new_path)
File "/Library/Python/2.7/site-packages/pip/utils/__init__.py", line 315, in renames
shutil.move(old, new)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 302, in move
copy2(src, real_dst)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 131, in copy2
copystat(src, dst)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 103, in copystat
os.chflags(dst, st.st_flags)
OSError: [Errno 1] Operation not permitted: '/tmp/pip-7dp3on-uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six-1.4.1-py2.7.Egg-info'
Fondamentalement, il est impossible de mettre à niveau six de 1.4.1 à 1.9.0. J'ai essayé de le faire séparément mais j'ai eu la même erreur.
Je mentionne El Capitan parce que certaines personnes rencontrent des problèmes pour l'installation d'autres pythons sur El Capitan et je me demande si cela est dû à cela.
Est-ce que quelqu'un sait comment résoudre ce problème?
Voici comment j'ai résolu les problèmes:
Commencez par installer Xcode CLI
:
xcode-select --install
Puis réinstallez Python
:
Sudo brew reinstall python
Enfin, installez nltk
:
Sudo pip install -U nltk
J'espère que ça aide :)
Je sais qu'il y a beaucoup de «boosters de bière», mais vous ne devriez pas avoir besoin d'un autre python pour quelque chose d'aussi basique. Si pip
trouve une dépendance dans/System, comme ils l'ont dit dans South Park, «vous allez passer un mauvais moment». Si vous n'avez pas besoin d'effectuer cette modification à l'échelle du système, vous pouvez simplement pip install --user <package>
et ajouter $HOME/Library/Python/2.7/bin
à votre chemin d'accès Shell (via ~/.bash_profile
, etc.).
les deux résultent dans six version 1.41:
pip install --ignore-installed six
pip install awsebcli --upgrade --ignore-installed six
la solution de contournement est celle qui a du sens, imo. Si Apple a besoin de sa propre copie de Python pour El Capitan, elle peut l’avoir. Le mien est maintenant ici: /usr/local/bin/python
Le système Python ne peut pas être mis à niveau ni modifié par pip en raison du tout nouveau mécanisme System Integrity Protection qui désactive toutes les modifications apportées au répertoire système même par «root». Vous pouvez désactiver SIP depuis l’environnement de récupération via des instructions disponibles ailleurs (par exemple, http://www.howtogeek.com/230424/how-to-disable-system-integrity-protection-on-a-mac- et-pourquoi-vous-devriez-pas/ ) mais une meilleure solution consiste à utiliser l'argument --user à installer dans votre répertoire local:
pip installer --user nltk
Cela laissera ensuite nltk dans votre répertoire de base local.
> python
>>> import nltk
>>> nltk
>>> <module 'nltk' from '/Users/yourusername/Library/Python/2.7/lib/python/site-packages/nltk/__init__.pyc'>
Clairement, si vous essayez d'installer quelque chose globalement accessible qui ne fonctionnera pas, mais si vous essayez simplement de faire, c'est d'installer des choses que vous allez exécuter à partir de votre propre ID utilisateur, cela fonctionne bien.
J'ai eu le même problème… .. J'utilise brasser pour gérer les paquets. donc vous devez d’abord exécuter brew doctor
Il va lister les problèmes avec votre configuration, les corriger. Dans mon cas,/usr/local n'était pas accessible en écriture, j'ai donc dû le réparer.
Puis courir
brew reinstall python
Cela a résolu mon problème et j'ai ensuite pu installer des paquets à l'aide de pip
Très bien 'alors :
la simple simple vérité simple est une réponse hybride de quelques autres énoncées ici:
Amen
Si vous avez déjà créé le répertoire/usr/local, exécutez cette commande dans le terminal:
Sudo chown $ (whoami): admin/usr/local && Sudo chown -R $ (whoami): admin/usr/local
de http://digitizor.com/2015/10/01/fix-homebrew-permissions-osx-el-capitan/