2008-08-27 59 views
2

OS X 10.5上的默認Python安裝是2.5.1,具有FAT 32位(Intel和PPC)客戶端。我想設置apache和mysql來運行django。在過去,我運行Apache和MySQL以32位模式匹配此安裝(甚至從Apache中刪除64位內容以使其工作)。安裝Python以匹配OS X 10.5中的目錄佈局

我想將Python升級到64位。我完全樂於從源代碼編譯它,並提供一個警告。我如何匹配默認安裝的佈局方式?尤其是,關於站點包在/Library/Python/2.5/而不是埋在框架頂部的站點包,一旦我編譯它。

回答

1

就我個人而言,我不會擔心它,直到你看到一個問題。在* Nix系統上安裝默認的python安裝會導致比它的價值更大的麻煩。我可以從個人經驗中說,除非你遇到問題,否則你永遠不會真正理解Python爲nix世界做了些什麼。

您還可以添加第二個python安裝,但這也會導致更多的問題,而不是值得的IMO。

所以我想最好的問題是,爲什麼你要使用64位版本的Python?

1

不知道我完全理解你的問題,但不能簡單地構建和安裝64位版本,然後創建符號鏈接,以便/Library/Python/2.5和以下指向你剛剛構建的python版本?

0

基本上,是的。我不確定你可以這樣做(目前的版本不這樣做)。但是,在使用python安裝腳本時,沒有選項(我可以找到)指定將目錄和文件放在哪裏(例如--prefix)。我希望能夠匹配python相關文件的當前佈局,以避免冗餘文件「污染」我的機器。

0

簡短的答案是因爲我可以。長期的回答是,擴展OP的說法是與apache和mysql/postgresql更加兼容。它們都是64位(apache是​​一個胖的二進制文件,ppc,ppc64 x86和x86和x86_64,其他的只是64位)。 Mysqldb和mod_python不會編譯,除非它們都運行相同的體系結構。是的,我可以在32位(並在過去)運行它們,但這是更多的工作,然後編譯一個程序。

編輯:你幾乎相信雖然只是讓安裝程序做它的事情和更新PATH來反映這一點。

1

Hyposaurus,

可以同時安裝多個版本的Python。並行安裝兩個版本可解決您的問題,並有助於避免上述由Jason Baker制定的問題。

最簡單的方法和我推薦的方法是使用MacPorts,它將單獨安裝所有軟件。默認情況下,例如,所有內容都安裝在/ opt/local中

另一種方法是簡單地下載源文件並使用指定的前綴進行編譯。注意,此方法不會修改PATH環境變量,所以你需要做的是自己,如果你想避免每次

./configure --prefix=/usr/local/python64 
make 
sudo make install 

然後,你可以簡單地指向鍵入完全合格的路徑Python可執行程序你的Apache在新版本中使用mod_python的PythonInterpreter指令