我正在尝试在我的本地环境中安装PyCurl,它在OS X 10.7 Lion上有python 2.7和gcc-4.2。我已根据这个答案Error installing PyCurl试图这样做了:
sudo env ARCHFLAGS="-arch x86_64" pip install pycurl
哪个失败,因为我通过Xcode安装了gcc-4.2:
error: command 'gcc-4.0' failed with exit status 1
我也尝试过下载源代码并构建一个setup.py(我根据Problem trying to install PyCurl on Mac Snow Leopard对其进行了修改):
gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g -fwrapv -Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -arch x86_64 -pipe -DHAVE_CURL_SSL=1 -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c src/pycurl.c
这导致与上面相同的错误。我已经确认我确实有gcc-4.2,并且它链接到我的/ usr / bin。
我认为如果我正确编译它会工作,以便它知道在安装而不是gcc-4.0时使用gcc-4.2。但是,我不知道如何做到这一点,并且没有找到解释通过使用特定gcc的参数的东西。我希望尽可能避免覆盖系统默认值。
答案 0 :(得分:1)
有可能你的系统上安装了一个32位的Python 2.7(可能是从python.org下载的),它是用gcc-4.0
构建的,包含一个PPC通用变体。使用这些Pythons构建C扩展模块在安装Xcode 4时是非常有问题的(10.7的默认值和10.6的可选项)因为gcc-4.0
和PPC支持都被删除了。最简单和最好的长期解决方案是安装64位/ 32位Python构建(请参阅the python.org download page获取当前版本)或仅使用Apple提供的Python 2.7.1(/usr/bin/python2.7
)在10.7。