Mac OS X Lion,virtualenv,PIL 安装 - gcc 错误
我刚刚在我的Mac上安装了Xcode,系统是Mac OS X Lion。安装完成后,我尝试在一个虚拟环境中用pip、easy_install和Homebrew来安装PIL,但这三种方法都出错了。使用pip安装时出现了以下错误:
pip `
unable to execute gcc-4.0: No such file or directory
error: command 'gcc-4.0' failed with exit status 1
`
而使用easy_install时,出现了这个错误:无法执行gcc-4.0:没有这样的文件或目录
错误:设置脚本出错:命令'gcc-4.0'失败,退出状态为1
使用Homebrew时,错误信息是:错误:执行失败:python setup.py build_ext
我现在不知道该怎么办了。
谢谢,
CG
5 个回答
你能在你的系统上找到 gcc-4.0
这个程序吗?你可能需要把它所在的文件夹加到你的 PATH
环境变量里。
我花了好几个小时在同一个问题上,最后找到了解决办法:
首先,下载PIL的源代码,然后进入这个文件夹。
接着,检查一下你电脑上安装的gcc
版本,可以用下面的命令:
gcc
i686-apple-darwin10-gcc-4.2.1: no input files
然后,我强制使用这个版本,方法是:
export CC=gcc-4.2
接下来,选择正确的架构(我这里是32位):
export ARCHFLAGS="-arch i386"
如果是64位的话,就用这个命令:export ARCHFLAGS="-arch x86_64"
最后,进行构建和安装:
python setup.py build
python setup.py install
Xcode 4.1 在 OS X Lion 10.7 上不再像之前的版本那样包含 gcc-4.0
这个工具。当你安装一个像 PIL 这样的 Python 包时,如果它包含 C 扩展模块,Python 的 Distutils 会尝试使用和 Python 本身构建时相同版本的 C 编译器。听起来你用来创建 virtualenv
的 Python 版本是一个较旧的只支持 32 位的 Python,它是用 gcc-4.0
构建的。你可以通过在你的 virtualenv
中启动 python
来确认这一点。如果显示的是 gcc-4.0
,那么你需要重新创建这个虚拟环境,使用一个更新的基础 Python,可以选择 Lion 自带的 Python,或者通过 python.org 的安装程序或 brew 来安装一个更新的 Python。然后为这个 Python 安装 Distribute
、pip
和 virtualenv
,接着创建一个新的虚拟环境,并在其中安装 PIL。