ImportError'a neden olan şey: os X'de Python'un yükseltilmesinden sonra pkg_resources adında bir modül yok mu?


82

Python'u Mac'imde 2.6.4'e güncelledim. Dmg paketinden kurdum.

Ben ekledi böylece ikili, doğru benim Python yolunu ayarlamak görünmüyordu '/usr/local/lib/python2.6/site-packages'içinde.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']

Görünüşe göre bu gerekli tüm yollar değil çünkü iPython'u çalıştıramıyorum.

$ 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`

Google aramaları yaptım ve nasıl kurulacağını pkg_resourcesveya yolda olduğundan emin olamıyorum .

Bunu düzeltmek için ne yapmam gerekiyor?

Yanıtlar:


73

[GÜNCELLEME] TL; DR pkg_resources, Dağıt veya kurulum araçları tarafından sağlanır .

[GÜNCELLEME 2] PyCon 2013'te duyurulduğu gibi, Distributeve setuptoolsprojeleri yeniden birleştirildi. Distributeartık kullanımdan kaldırıldı ve sadece yeni akımı kullanmalısınız setuptools. Bunu dene:

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

Veya daha iyisi, pipüst düzey arayüz olarak ve setuptoolskapakların altında kullanacak bir akım kullanın .

[OP'nin özel sorunu için daha uzun cevap]:

Sorunuzda söylemiyorsunuz ama Apple tarafından sağlanan Python'dan (10.5'te 2.5 veya 10.6'da 2.6.1) veya bir python.org Python 2.5'ten yükseltme yaptığınızı varsayıyorum. Bu durumların herhangi birinde önemli olan nokta, her Python örneğinin, ek paketlerin kurulduğu kendi site paketleri kitaplığı da dahil olmak üzere kendi kitaplığına sahip olmasıdır. (Ve bu arada hiçbiri /usr/local/libvarsayılan olarak kullanmaz .) Bu, yeni python 2.6'nız için ihtiyacınız olan ek paketleri yüklemeniz gerektiği anlamına gelir. Bunu yapmanın en kolay yolu, önce yeni python2.6'nın aramanızda ilk olarak görünmesini sağlamaktır $PATH(yani yazmak python2.6, beklendiği gibi onu çağırır); python2.6 yükleyicisi .bash_profile, çerçeve bin dizinini ön tarafa yerleştirmek için sizi değiştirmiş olmalıdır $PATH. Ardından şunu easy_installkullanarak kurunoradaki talimatları izleyerek kurulum araçları . pkg_resourcesModül ayrıca otomatik olarak bu adım yüklenir.

Ardından yüklemek için yeni yüklenen easy_install(veya pip) sürümünü kullanın ipython.

easy_install ipython

veya

pip install ipython

Bu site-packagespython örneği için otomatik olarak doğru konuma kurulmalı ve gitmekte iyi olmalısınız.


Dün gece kurulum araçlarını kurmaya çalıştığımda ortalığı karıştırdım. .Egg dosyasını bir kabuk dosyası gibi çalıştırarak kurulumu bitirmeyi ihmal ettim. $ sh setuptools-0.6c11-py2.6.egg Sanırım yeni Python yolunu bir yere ekledi.
BryanWheelock

NOT: Bu sorunu benim için çözen asıl cevap aşağıdadır - bkz. Stackoverflow.com/a/10538341/293064
Jay Taylor

Çözümün ya yüklemek Distributeya da olduğunu daha açık hale getirmek için bu eski yanıtı biraz güncelledim setuptools. Belirli adımlar bağlantılarda yer aldı. OP'nin sorusu diğer konuları da kapsıyordu.
Ned Deily

Yeninin distributelehine setuptoolsve bahsedilecek olan kullanımdan kaldırmayı yansıtan bir başka düzenleme pip.
Ned Deily

1
alma python ez_setup.py File "ez_setup.py", line 1 <!DOCTYPE html> ^ SyntaxError: invalid syntax:(
hi15

76

Ben de aynı şeyle karşılaştım ImportError. setuptoolsPython ortamımda bir şekilde paket silinmişti.

Sorunu düzeltmek için kurulum komut dosyasını çalıştırın setuptools:

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

Herhangi bir sürümünüz varsa distributeveya setuptools0.6'dan düşükse, önce onu kaldırmanız gerekir. *

Daha fazla ayrıntı için Kurulum Talimatlarına bakın.


* Zaten bir çalışmanız varsa distribute, onu sizi değiştiren "uyumluluk sarmalayıcısına" yükseltmek setuptoolsdaha kolaydır. Ama işler zaten bozulmuşsa, bunu denemeyin.


3
Bunu yapmanın doğru yolu bu. Pkg_resources olmadan easy_installda büyük olasılıkla çalışmayacaktır (bu nedenle easy_installve pipkurulum araçlarını yükleyemeyecektir).
Alex Churchill

Distribute veya setup araçlarını kurmak, aslında, kabul edilen yanıtın önerdiği şeydir. Daha açık hale getirmek için orijinal cevabı biraz güncelledim. BTW, bunun gibi güvenli olmayan bir URL'den dosyanın içeriğini önce incelemeden bir şey indirmek ve kurmak biraz tehlikelidir.
Ned Deily

7

Python'unuzu mac os 10.7'de yükseltmeniz ve pkg_resources çalışmaması durumunda, bunu düzeltmenin en basit yolu, Ned'in yukarıda belirtildiği gibi kurulum araçlarını yeniden yüklemektir.

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

3

Sistemimde (OSX 10.6) bu paket şu adrestedir:

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

Umarım bu, yolunuzda eksik olup olmadığını anlamanıza yardımcı olur.


1

Bunun nedeni, IPython modülünün PYTHONPATH'ınızda olmaması olabilir.

IPython'u yükler ve ardından python setup.py kurarsanız

Kurulum, IPython modülünü python yolunuza eklemez. PYTHONPATH'ınıza manuel olarak eklemek isteyebilirsiniz. Bunu yaptıktan sonra çalışması gerekir:

dışa aktar PYTHONPATH = / pathtoIPython: $ PYTHONPATH

Kalıcı hale getirmek için bu satırı .bashrc veya. Profilinize ekleyin.


0

Bunun OSX ile ilgili olmadığını anlıyorum, ancak gömülü bir sistemde (Beagle Bone Angstrom) tamamen aynı hata mesajını aldım. Aşağıdaki ipk paketlerini kurmak sorunu çözdü.

opkg install python-setuptools
opkg install python-pip

0

Ubuntu'da bu hatayı aldım ve aşağıdakiler benim için çalıştı:

Dropbox ikili dosyalarını kaldırdık ve çalıştırarak tekrar indirdiler:

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

0

Otobanla ilgili proje üzerinde çalışırken de aynı problemle karşılaştım.

1) Bu yüzden setuptools.-0.9.8.tar.gz formunu https://pypi.python.org/packages/source/s/setuptools/ indirip çıkarıyorum .

2) Daha sonra pkg_resources modülünü alıp ihtiyaç duyduğu klasöre kopyalıyorum. ** benim durumumda bu klasör C: \ Python27 \ Lib \ site-packages \ autobahn idi


0

Benim durumumda paket python-pygmentskaçırıldı. Bunu komutla düzeltebilirsiniz:

sudo apt-get install python-pygments

İle bir sorun varsa pandoc. Sen yüklemeniz gerekir pandocve pandoc-citeproc.

sudo apt-get install pandoc pandoc-citeproc


0

Bunu yalnızca python'u kaldırmakta sorun yoksa deneyin.

Python'u kullanarak kaldırdım

brew uninstall python

daha sonra kullanılarak yüklendi

brew install python

sonra işe yaradı!

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.