在Mavericks(Enthought Canopy python)上安装gevent

3

有人在Mavericks上成功构建gevent 1.0了吗?

我已经尝试过以下方式:

  1. 使用pip(在gevent软件包索引中推荐)
  2. 使用easy_install
  3. 从源代码编译

构建'gevent.core'时,我一直收到相同的错误信息:

...
building 'gevent.core' extension
creating build/temp.macosx-10.6-i386-2.7/gevent
Compiling with an SDK that doesn't seem to exist: /Developer/SDKs/MacOSX10.6.sdk
Please check your Xcode installation
gcc -DNDEBUG -g -O3 -arch i386 -isysroot /Developer/SDKs/MacOSX10.6.sdk -U__llvm__ -      
DLIBEV_EMBED=1 -DEV_COMMON= -DEV_CHECK_ENABLE=0 -DEV_CLEANUP_ENABLE=0 -DEV_EMBED_ENABLE=0 
-DEV_PERIODIC_ENABLE=0 -Ibuild/temp.macosx-10.6-i386-2.7/libev -Ilibev -  
I/Applications/Canopy.app/appdata/canopy-1.2.0.1610.macosx-
x86/Canopy.app/Contents/include/python2.7 -c gevent/gevent.core.c -o build/temp.macosx-
10.6-i386-2.7/gevent/gevent.core.o
clang: warning: no such sysroot directory: '/Developer/SDKs/MacOSX10.6.sdk'
In file included from gevent/gevent.core.c:17:
/Applications/Canopy.app/appdata/canopy-1.2.0.1610.macosx- 
x86/Canopy.app/Contents/include/python2.7/Python.h:33:10: fatal error: 
  'stdio.h' file not found
#include <stdio.h>
         ^
1 error generated.
error: command 'gcc' failed with exit status 1

似乎与XCode有问题。我确认已经安装了XCode(版本为5.0.2)的命令行工具:

xcode-select --install

但这似乎并没有改变任何事情。 显然我不是唯一遇到这个问题的人(缺少/ Developer / SDKs / MacOSX10.6.sdk),但如果可以的话,我想使用Enthought的Canopy版本的Python(已经花费了太多时间在苹果开发者网站上搜寻以尝试直接下载MacOSX10.6.sdk)。
有没有建议,不涉及重新开始使用macport的python?谢谢!
2个回答

2

据我所知,苹果在最新版本的XCode中玩了一个花招,使得gcc不再是真正的gcc,而是链接到clang,这与标准的Python(包括Canopy)不兼容。

如果您从https://developer.apple.com/downloads/index.action安装Xcode 3.2.1开发人员工具,则应该可以更好地运行。


1
谢谢Jonathan。3.1.2开发工具有MacOSX10.5.sdk,但是在下载了3.2.1开发工具(和MacOSX10.6.sdk)之后,我成功安装了gevent。 - pedmiston
谢谢,我已经更正了我的评论以记录下您的经验。 - Jonathan March

0

对我来说,gevent网站上的提示很有帮助:

pip install cython git+git://github.com/gevent/gevent.git#egg=gevent


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接