argh。你的道路上有兩個相同版本的蟒蛇?不要這樣做。
點,易於安裝等與特定的python安裝相關聯,並將默認使用該python。所以如果你有系統提供的python和系統提供的easy_install(或者使用系統python自己安裝easy_install),那麼easy_install默認會爲系統python安裝軟件包。
避免這種混亂的最好辦法,恕我直言,是用使用的系統蟒蛇該版本(2.7可能),對於其他版本,使用make alt-install
安裝時,它會給你喜歡python3.1
之類的可執行文件。如果您確實需要更換系統提供的版本,請將其卸載。
一旦你做到了。每個python將有一個獨特的名稱(以版本結尾),並且python
將保持系統之一。
接下來,當您安裝easy_install時,您會注意到有版本特定的版本(例如easy_install-2.7
)。使用這些。如果缺少一個,然後用適當的python安裝distutils(例如使用python3.1
,您將得到easy_install-3.1
)。不幸的是,每次你這樣做(iirc),你都會覆蓋未版本的easy_install
,所以永遠不會使用 - 總是使用版本化版本。
或者,您無法安裝easy_install或pip用於系統版本以外的其他任何內容,則始終使用virtualenv。 virtualenv會讓你指定一個python版本(所以你可以使用系統virtualenv來安裝所有的python),然後爲你使用的python安裝easy_install/pip。所以一旦你進入虛擬環境,一切都會正常。
我剛剛意識到我對pip沒有太多經驗,所以我實際上無法幫助(除了注意virtualenv確實提供了它)(關於哪個更好:它曾經是pip更好保持;我認爲這些天最新的distutils/easy_install與pip一樣好,但pip有一些我從未使用過的功能)。
免責聲明:以上是從開發lepl的經驗,它運行在2.6到3.2,所以我需要在所有這些測試它。據我所知,我上面描述的是爲我工作的,但我對python/easy_install/pip沒有深入的瞭解,所以我可能會在合理化/描述事物時出現一些錯誤(換句話說,我正在編寫所有這些以防萬一它有幫助,但我有點擔心,我有一個錯誤 - 請,有人糾正我,如果是這樣)。
您正在使用的virtualenv? – alan
@alan我不是。我是不是該? – mikebmassey
不,不一定。但是,如果你是,你需要確保virtualenv在你的導入工作之前被激活。但是忽略我的評論,因爲它似乎並不相關。 – alan