2011-10-11 143 views
1

我想在我的本地环境中安装PyCurl,它在OS X 10.7 Lion上有python 2.7和gcc-4.2。基于这个答案Error installing PyCurl我试着这样做:在OS X 10.7上安装pycurl Lion

sudo env ARCHFLAGS="-arch x86_64" pip install pycurl 

,因为我的gcc-4.2通过Xcode中安装的失败:

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

我也试着下载源代码,构建设置的.py(I改性此基础上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.2而不是gcc-4.0,它就会工作。但是,我不知道该怎么做,也没有找到解释通过使用某个特定gcc的参数的东西。如果可能,我想避免覆盖系统默认值。

回答

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),或者仅使用10.7中的Apple提供的Python 2.7.1(/usr/bin/python2.7)。

+0

我以为我在使用Apple提供的python安装Lion。当我做了哪个python时,告诉我路径是/Library/Frameworks/Python.framework/Versions/2.7/bin/python而不是/usr/bin/python2.7 – ender

+0

不,苹果提供的Pythons都在'/ System /库/框架/ Python.framework'。您的shell路径可能已被修改,以便首先放置该'/ Library .../2.7/bin/python'目录。 python.org安装程序默认执行此操作。如果你愿意的话,你可以通过修改适当的shell启动文件来撤销这个文件,很可能是'.bash_profile'。用'.bash_profile.pysave'查找并比较它。 –

+0

谢谢,我修改了我的.bash_profile以使用内置的python,并且能够成功安装pycurl! – ender