Comment puis-je installer la bibliothèque Python 'gevent" sur Mac OS X Lion

Bibliothèque Python gevent, version 0.13.6 (la version actuelle sur PyPI) ne sera pas pip install sur OS X Lion, Python 2.7 (et probablement d'autres). Il fonctionne très bien sur Snow Leopard.

Comment puis-je obtenir cette bibliothèque installée?

Points de Bonus si cela peut être fait en utilisant pip install, plutôt que d'un manuel ou un processus personnalisé, parce que là, on va jouer gentiment avec automatisation des builds.

Voici mon pip install de sortie:

pip install gevent
Downloading/unpacking gevent
Running setup.py egg_info for package gevent
Requirement already satisfied (use --upgrade to upgrade): greenlet in ./tl_env/lib/python2.7/site-packages (from gevent)
Installing collected packages: gevent
Running setup.py install for gevent
building 'gevent.core' extension
gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -isysroot /Developer/SDKs/MacOSX10.6.sdk -arch i386 -arch x86_64 -g -O2 -DNDEBUG -g -O3 -I/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c gevent/core.c -o build/temp.macosx-10.6-intel-2.7/gevent/core.o
In file included from gevent/core.c:225:
gevent/libevent.h:9:19: error: event.h: No such file or directory
gevent/libevent.h:38:20: error: evhttp.h: No such file or directory
gevent/libevent.h:39:19: error: evdns.h: No such file or directory
gevent/core.c:361: error: field ev has incomplete type
gevent/core.c:741: warning: parameter names (without types) in function declaration
gevent/core.c: In function __pyx_f_6gevent_4core___event_handler’:
gevent/core.c:1619: error: EV_READ undeclared (first use in this function)
gevent/core.c:1619: error: (Each undeclared identifier is reported only once
gevent/core.c:15376: warning: assignment makes pointer from integer without a cast
[... about 1000 more lines of compiler errors...]
gevent/core.c:15385: error: dereferencing pointer to incomplete type
gevent/core.c: In function __pyx_pf_6gevent_4core_4http___init__’:
gevent/core.c:15559: warning: assignment makes pointer from integer without a cast
gevent/core.c: At top level:
gevent/core.c:21272: error: expected ‘)’ before val
lipo: can't figure out the architecture type of: /var/folders/s5/t94kn0p10hdgxzx9_9sprpg40000gq/T//cczk54q7.out
error: command 'gcc-4.2' failed with exit status 1
Complete output from command /Users/jacob/code/toplevel/tl_env/bin/python -c "import setuptools;__file__='/Users/jacob/code/toplevel/tl_env/build/gevent/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --single-version-externally-managed --record /var/folders/s5/t94kn0p10hdgxzx9_9sprpg40000gq/T/pip-s2hPd3-record/install-record.txt --install-headers /Users/jacob/code/toplevel/tl_env/bin/../include/site/python2.7:
running install
running build
running build_py
running build_ext
building 'gevent.core' extension
gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -isysroot /Developer/SDKs/MacOSX10.6.sdk -arch i386 -arch x86_64 -g -O2 -DNDEBUG -g -O3 -I/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c gevent/core.c -o build/temp.macosx-10.6-intel-2.7/gevent/core.o
  • pypi.python.org/packages/source/g/gevent/gevent-0.13.6.tar.gz le télécharger ici. et de l'installer à l'aide de sudo python setup.py installez -I /opt/local/include -L /opt/local/lib. En supposant que vous avez installé libevent via Macports atleast.
  • La fermeture de ce que "pas une vraie question" est extraordinairement peu serviable. Il pourrait ne pas répondre à certains des critères abstraits de "réalisme", mais d'être en mesure de trouver cette page et de lire les fourni des réponses juste m'a sauvé tout un tas de temps.
  • La nouvelle version de gevent, actuellement 1.0 bêta, est disponible sur google code, et ne s'appuie plus sur libevent. Il s'installe très bien sur mac OSX, bien que, vous devez télécharger le sdist et l'installer manuellement, car il n'est pas sur PyPI encore.
  • Je sais que c'est un vieux post, mais j'ai aussi trouvé stackoverflow.com/questions/32417141/... utile pour les problèmes d'installation gevent sur OSX 10.10.5. Plus précisément, en utilisant CFLAGS='-std=c99' pip install gevent va utiliser une ancienne, compatible compilateur. La nouvelle question n'est pas un double de soi, mais je ne veux pas les gens à perdre autant de temps que je n'ai chasser sans rapport avec les solutions.
InformationsquelleAutor Jacob Lyles | 2011-10-03