2012-01-15 71 views
5

當使用PIP在Python安裝包,我遇到了以下錯誤:爲什麼pip安裝程序希望gcc-4.2成爲OS X Lion中的gcc編譯器的名稱?

unable to execute gcc-4.2: No such file or directory 

顯然,點子正試圖使用​​gcc-4.2這是不以任何二進制目錄,即在/ usr/bin中的。在環顧這個網站和其他網站之後,我發現許多其他人都遭受同樣的問題。然而,gcc在OS X Lion中更新爲4.2版本,這不是版本問題,相反,gcc只是稱爲gcc,而不是gcc-4.2,位於/ usr/bin下,並且符號鏈接到llvm-gcc。在/ usr/bin中添加gcc-4.2作爲gcc的符號鏈接後,pip能夠成功安裝所有東西。那爲什麼呢,那個點是在尋找gcc-4.2而不是gcc?這是pip,OS X Lion還是pip中試圖用gcc-4.2自行安裝的軟件包的錯誤?

最後,我的符號鏈接是否在這種情況下做了正確的事情,或者我應該用其他方式解決這個問題?

回答

6

您的simlink hack現在是正確的解決方案。最終,支持平臺點的人需要停止使用這種編譯器的顯式版本。首先這是一個糟糕的主意,並且只會在平臺上的編譯器發生變化時變得更糟。

與Milad的答案相反,還有其他解決方案來確定主機編譯器的版本,並且您的解決方案將一直運行,直到支持平臺上的pip的人員修復其代碼。

0

您符號鏈接黑客是的正確解決方案。 pip只是試圖確保使用正確版本的GCC進行安裝。由於您的電腦配備該版本,因此您可以將它指向您的可用gcc,因爲它正在尋找它。但是,如果你擁有gcc-4.1,那麼你的安裝可能已經沒有了。