gevent installer sur x86_64 échoue: « symbole non défini: evhttp_accept_socket »

StackOverflow https://stackoverflow.com/questions/2849964

  •  27-09-2019
  •  | 
  •  

Question

Je suis en train d'installer gevent sur une nouvelle EC2 CentOS 5.3 64 bits système.

Depuis la version libevent disponible en miam était trop vieux pour un autre paquet (beanstalkd) Je libevent-1.4.13-stable compilé / installé manuellement à l'aide de la commande suivante:

./configure --prefix=/usr && make && make install

Ceci est la sortie de l'installation gevent:

[gevent-0.12.2]# python setup.py build --libevent /usr/lib
Using libevent 1.4.13-stable: libevent.so
running build
running build_py
running build_ext
Linking /usr/src/gevent-0.12.2/build/lib.linux-x86_64-2.6/gevent/core.so to 
    /usr/src/gevent-0.12.2/gevent/core.so
[gevent-0.12.2]# cd /path/to/my/project
[project]# python myscript.py
Traceback (most recent call last):
  File "myscript.py", line 9, in <module>
    from gevent.wsgi import WSGIServer as GeventServer
  File "/usr/lib/python2.6/site-packages/gevent/__init__.py", line 32, in <module>
    from gevent.core import reinit
ImportError: /usr/lib/python2.6/site-packages/gevent/core.so: undefined symbol: evhttp_accept_socket

J'ai suivi exactement les mêmes étapes sur une instance de VirtualBox locale (32 bits) et je ne vois aucune erreur.

Comment puis-je résoudre ce problème?

Était-ce utile?

La solution

fix était plus facile de cloner le dépôt git , passez à la branche wip-all, et exécuter python setup.py build_libevent build install qui grappins et construit libevent statiquement contre gevent:

# git clone http://github.com/schmir/gevent.git
# cd gevent
# git branch -a
* upstream
  origin/HEAD
  origin/close-socket-cancel-event
  origin/pywsgi-without-basehttpserver
  origin/upstream
  origin/wip-all
  origin/wip-setup-config
# git checkout origin/wip-all
# python setup.py build_libevent build install

Plus d'informations .

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top