2011-08-02 59 views
10

我剛剛完成了xcode安裝,mac osx獅子。完成後,我嘗試使用pip,easy_install和home brew在虛擬環境中安裝PIL。所有三人都犯錯了。 PIP安裝提供以下錯誤:Mac OSX獅子,virtualenv,pil安裝 - gcc錯誤

PIP`

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

error: command 'gcc-4.0' failed with exit status 1 

`

的easy_install unable to execute gcc-4.0: No such file or directory error: Setup script exited with error: command 'gcc-4.0' failed with exit status 1

家釀Error: Failed executing: python setup.py build_ext

我真的不知道在哪裏可以從這裏走。

感謝, CG

回答

8

OS X上的Xcode 4.1 Lion 10.7不再包含gcc-4.0,因爲它在OS X的早期版本中已經做過。當您安裝包含C擴展模塊的PIL的Python包時,Python的Distutils將嘗試使用相同版本的Python編譯器本身就是用它編譯的。這聽起來像是用來創建您的virtualenv的Python版本是一個較舊的32位Python,它由gcc-4.0構建。您可以通過在virtualenv開始python來確定。如果它說gcc-4.0,則需要使用更新的基本Python,Lion中的任一Apple提供的Pythons或使用python.org安裝程序或brew配方安裝更新的python來重新創建virtualenv。然後爲該Python安裝Distributepipvirtualenv,創建一個新的virutalenv,然後在其中安裝PIL。

+0

下面是它在python的描述行中所說的內容:Python 2.6.4(r264:75821M,2009年10月27日,19:48:32) [GCC 4.0.1(Apple Inc. build 5493)] on darwin –

+0

是,這似乎是來自python.org的一個老的Python 2.6.4。你可以看看它是否安裝在'/ Library/Frameworks/Python.framework/Versions/2.6'中。您可以通過鍵入以下命令來卸載它:'sudo rm -r/Library/Frameworks/Python.framework/Versions/2.6'這些都在一行上,並且仔細輸入! –

+0

太棒了,我只是把一切都運轉起來。你太棒了! –

0

你能找到你的系統上gcc-4.0二進制?您可能需要將它所在的目錄添加到您的環境變量PATH中。

+0

有一個在/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.0這似乎是相當隨機的。 usr/bin或/ developer/usr/bin中沒有任何副本,這正是我所期望的。我將如何添加到我的PATH env var? –

0

如果它有幫助,我用sym鏈接解決了這個令人討厭的問題,我認爲它適用於你。我寫了這個與我的版本的海灣合作委員會在腦海裏,這是4.2:

cd /usr/bin 
rm cc gcc c++ g++ 
ln -s gcc-4.2 cc 
ln -s gcc-4.2 gcc 
ln -s c++-4.2 c++ 
ln -s g++-4.2 g++ 
ln -s gcc-4.2 gcc-4.0 

有你去!

1

同樣的問題花了幾個小時後,這是它的工作對我來說:

下載PIL的源代碼,並進入這個。 檢查其中的gcc版本做你必須:

gcc 
i686-apple-darwin10-gcc-4.2.1: no input files 

然後我強迫通過應用此版本:

export CC=gcc-4.2 

,並選擇正確的體系結構(在我的情況下,32位):

export ARCHFLAGS="-arch i386" 

適用於64用途出口ARCHFLAGS="-arch x86_64"

然後建立和安裝:

python setup.py build 
python setup.py install 
0

一個想法是指向gcc-4。0到默認的gcc標誌:

sudo ln -s /usr/bin/gcc /usr/bin/gcc-4.0