2011-08-20 82 views
5

,我遇到了這個錯誤:不能使用PIP了

Traceback (most recent call last): 
    File "/usr/local/bin/pip", line 9, in <module> 
    load_entry_point('pip==1.0.2', 'console_scripts', 'pip')() 
    File "/usr/local/lib/python2.6/dist-packages/distribute-0.6.21-py2.6.egg/pkg_resources.py", line 337, in load_entry_point 
    return get_distribution(dist).load_entry_point(group, name) 
    File "/usr/local/lib/python2.6/dist-packages/distribute-0.6.21-py2.6.egg/pkg_resources.py", line 2281, in load_entry_point 
    return ep.load() 
    File "/usr/local/lib/python2.6/dist-packages/distribute-0.6.21-py2.6.egg/pkg_resources.py", line 1996, in load 
    raise ImportError("%r has no %r attribute" % (entry,attr)) 
ImportError: <module 'pip' from '/usr/lib/pymodules/python2.6/pip/__init__.pyc'> has no 'main' attribute 

很顯然,我做了一些改變,打破PIP系統。但我不知道它是什麼。什麼可能導致上述異常?

編輯:

我可以猜測的是,今天上午,我裝箱一個virtualenv中,通過運行安裝我自己寫的一個包:在這種環境中

python setup.py install

順便說一句,我也嘗試通過運行get-pip.py重裝點子,沒有工作

+1

你可以用easy_install重新安裝pip嗎?我不認爲任何人都能夠猜測你可能做出的「改變系統」。你幾乎肯定不想在/ usr/lib/pymodules中手動更改任何*。 – geoffspear

+0

我沒有在pymodules中手動執行任何操作。 – ablmf

回答

8

我注意到,分佈安裝在/usr/local但是點子是/usr/lib,所以我猜,你有一箇舊版本的pip安裝系統範圍,這是在某種程度上壓倒你是easy_install ed或pip ed。我會開始看那裏。

+0

是的,我有一個系統寬的點,但今天早上我也安裝在virtualenv,因爲我認爲它並不重要。那麼我怎樣才能擺脫/ usr/local中的那個?只要刪除它? – ablmf

+1

謝謝,我刪除了/ usr/local中的安裝,現在一切正常。 – ablmf

3

使用easy_install重新安裝。關閉終端並重新打開。現在應該工作。