2009-05-29 47 views
0

Fedora Core 9包含Python 2.5.1。我可以使用YUM獲取最新和最好的版本。Fedora Python升級破解easy_install

爲了準備2.6官方測試,我想從2.5.4開始。看起來沒有Fedora 9 YUM包,因爲2.5.4不是FC9的官方部分。

我下載2.5.4,沒有./configure; make; make install和傷口了兩條蟒蛇。官方2.5.1(在/usr/bin)和新的2.5.4。 (在/usr/local/bin)。我的技術堆棧的

沒有安裝在/usr/local/lib/python2.5

看來,我有幾個選擇前進。任何人都有任何偏好?

  • 將/usr/lib/python2.5/*複製到/usr/local/lib/python2.5以複製我的環境。這應該起作用,除非在安裝過程中某些部分的Python庫連接了/ usr/bin/python。這當然很簡單,但是有一個缺點嗎?

  • 運行easy_install重新安裝了一切。除easy_install(目前)硬連線到/usr/bin/python。所以,我必須先修復easy_install,然後重新安裝所有內容。

    這需要一段時間,但它給了我一個乾淨,新的最新和最偉大的環境。但是有沒有一個缺點? [爲什麼easy_install硬連線本身?]

  • Relink /usr/bin/python/usr/local/bin/python。我仍然需要複製或重新安裝庫,所以我認爲這對我沒有好處。 [這將使easy_install工作;但這樣會編輯/usr/bin/easy_install]

有沒有人複製他們的圖書館?這很簡單嗎?

或者我應該修正easy_install,只需通過安裝嚮導步驟,並建立一個新的,乾淨的,最新的,和最偉大的?


編輯

或者,我應該

  • 跳過試圖解決2.5.1和2.5.4的問題,只是直接跳轉到2.6?

回答

4

通常,您只會安裝一個版本的python版本。由於2.5.1和2.5.4來自同一版本,因此複製你的庫應該可以正常工作。你需要注意的是,你現在在你的路徑中有/ usr/bin/python和/ usr/local/bin/python,並且一些實用程序可能會感到困惑。

如果您需要同時安裝兩個微版本,我會將2.5.4完全保留在您的路徑之外,或者允許它完全打開另一個(儘管如此,自擔風險) 如果您與前者一起使用,您還可以使用PYTHONPATH環境變量將2.5.4指向您的站點包。

Ubuntu採取不同的路線,這就是你如何處理不同的主要版本。蟒蛇二進制給出附加版本:

/usr/bin/python -> python2.6 
/usr/bin/python2.5 
/usr/bin/python2.6 

每間都設有所有模塊的版本自己/usr/lib/python2.X目錄。

最後,您可以進一步自定義您的設置modifying your site.py

2

我建議你創建一個安裝包成的virtualenv(或幾個)。

2

我在安裝Python 2.5的老版本的ubuntu上提供了2.4開箱即用的類似經歷和問題。

我第一次嘗試修補easy_install,但是這導致了與任何想要使用Python的操作系統提供的版本問題。我經常擺弄工具鏈來修復每次安裝時可能出現的不同錯誤。通過apt安裝任何python軟件,或者安裝任何安裝了python easy_install腳本的apt軟件,都是很有趣的。我相信我可能在修補easy_install時更加警惕,但我放棄了。

取而代之,我複製了庫,並且一切正常。正如你所說,根據你的安裝情況可能有問題,但我沒有遇到問題。仔細檢查Python的site.py模塊,我確實發現它完全在相對路徑上運行,動態構建絕對路徑;這給了我一些信心去嘗試「複製一切」的方法。我仔細檢查了任何.pth文件,然後去了。