Quelle est la cause ImportError: Aucun module nommé pkg_resources après mise à jour de Python sur OS X?

StackOverflow https://stackoverflow.com/questions/1756721

  •  20-09-2019
  •  | 
  •  

Question

Je viens de Python 2.6.4 mis à jour sur mon Mac. J'ai installé le package dmg.

Le binaire ne semble pas régler correctement mon chemin Python, donc j'ajouté '/usr/local/lib/python2.6/site-packages' dans .bash_profile

>>> pprint.pprint(sys.path)  
['',
'/Users/Bryan/work/django-trunk', 
'/usr/local/lib/python2.6/site-packages',  
'/Library/Frameworks/Python.framework/Versions/2.6/lib/python26.zip',  
'/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6',  
'/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-darwin',  
'/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-mac',  
'/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/plat-mac/lib-scriptpackages',  
'/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-tk',  
'/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-old',  
'/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-dynload',  
'/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages']

Il semble que ce n'est pas tous les chemins nécessaires parce que je ne peux pas courir ipython.

$ ipython  
Traceback (most recent call last):  
  File "/usr/local/bin/ipython", line 5, in <module>  
  from pkg_resources import load_entry_point  
ImportError: No module named `pkg_resources`

Je l'ai fait des recherches Google et je ne peux pas vraiment comprendre comment installer pkg_resources ou assurez-vous qu'il est sur le chemin.

Que dois-je faire pour résoudre ce problème?

Était-ce utile?

La solution

[UPDATE] TL; DR pkg_resources est fourni soit par Distribuer ou setuptools .

[UPDATE 2] Comme annoncé lors PyCon 2013, les projets de Distribute et setuptools ont re-fusion. Distribute est maintenant dépréciée et vous devez simplement utiliser la nouvelle setuptools actuelle. Essayez ceci:

curl -O https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py
python ez_setup.py

Ou, mieux, utiliser un pip l'interface de haut niveau et qui utiliseront setuptools sous les couvertures.

[Deuxième réponse pour le problème spécifique de l'OP]:

Vous ne dites pas dans votre question, mais je suppose que vous de la mise à niveau Python fournie par Apple (2,5 sur 10,5 ou 2.6.1 sur 10.6) ou que la mise à niveau d'un python.org Python 2.5. Dans tous ces cas, le point important est que chaque instance Python possède sa propre bibliothèque, y compris sa propre bibliothèque site-packages, qui est l'endroit où les paquets supplémentaires sont installés. (Et aucun d'entre eux utilisent /usr/local/lib par défaut, par le chemin.) Cela signifie que vous aurez besoin d'installer ces paquets supplémentaires dont vous avez besoin pour votre nouveau python 2.6. La meilleure façon de le faire est d'abord faire en sorte que la nouvelle python2.6 apparaît d'abord sur votre recherche $PATH (qui est, en tapant python2.6 il invoque comme prévu); le programme d'installation de python2.6 aurait modifié votre .bash_profile pour mettre le répertoire bin-cadre à l'avant de $PATH. Ensuite, installez easy_install en utilisant setuptools suivant les instructions. Le module de pkg_resources est également installé automatiquement par cette étape.

Ensuite, utilisez la version nouvellement installée de easy_install (ou pip) pour installer ipython.

easy_install ipython

ou

pip install ipython

Il doit automatiquement s'installé à l'emplacement de site-packages correct pour cette instance de python et vous devriez être bon d'aller.

Autres conseils

Je rencontrais le même ImportError. D'une certaine façon le paquet setuptools avait été supprimé dans mon environnement Python.

Pour résoudre le problème, exécutez le script d'installation pour setuptools:

curl https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py | python

Si vous avez une version de distribute , ou tout setuptools inférieur à 0,6, vous allez doivent désinstaller. *

Voir Instructions d'installation pour plus de détails.


* Si vous avez déjà un distribute de travail, la mise à niveau à la « emballage de compatibilité » que vous bascule sur setuptools est plus facile. Mais si les choses sont déjà brisés, ne pas essayer cela.

En cas de mise à niveau de python sur Mac OS 10.7 et pkg_resources ne fonctionne pas, la façon la plus simple de résoudre ce problème est juste réinstaller setuptools comme Ned mentionné ci-dessus.

sudo pip install setuptools --upgrade
or sudo easy_install install setuptools --upgrade

Sur mon système (Mac OS X 10.6) ce paquet est à

/System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python/pkg_resources.py

J'espère que vous aide à déterminer s'il manque ou tout simplement pas sur votre chemin.

La raison peut-être parce que le module IPython est pas dans votre PYTHONPATH.

Si vous donwload IPython puis faire  python setup.py install

La configuration ne pas ajouter le module IPython à votre chemin de python. Vous pouvez l'ajouter à votre PYTHONPATH manuellement. Il devrait fonctionner après que vous faites:

export PYTHONPATH = / pathtoIPython: PYTHONPATH $

Ajoutez cette ligne dans votre .bashrc ou .profile pour le rendre permanent.

Je sais que ce n'est pas lié à Mac OS X, mais un j'ai eu le même message d'erreur exact système (Beagle os Angstrom) intégré. Installation des paquetages ipk suivants ont résolu.

opkg install python-setuptools
opkg install python-pip

J'ai eu cette erreur sur Ubuntu , et ce qui suit travaillé pour moi:

Suppression des fichiers binaires de Dropbox et les télécharger à nouveau, en exécutant:

sudo rm -rf /var/lib/dropbox/.dropbox-dist
dropbox start -i

Je rencontrais avec le même problème quand je travaille sur le projet lié à autobahn.

1) Je télécharger le formulaire setuptools.-0.9.8.tar.gz https://pypi.python.org/packages/source/s/setuptools/ et l'extraire.

2) Ensuite, je reçois le module pkg_resources et le copier dans le dossier dans lequel il avait besoin. ** Dans mon cas, ce dossier était C: \ Python27 \ Lib \ site-packages \ autobahn

Dans mon cas, python-pygments paquet a été manqué. Vous pouvez le fixer par la commande:

sudo apt-get install python-pygments

En cas de problème avec pandoc. Vous devez installer pandoc et pandoc-citeproc.

sudo apt-get install pandoc pandoc-citeproc

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top