>>> import gevent
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "build/bdist.macosx-10.6-universal/egg/gevent/__init__.py", line 41, in <module>
File "build/bdist.macosx-10.6-universal/egg/gevent/core.py", line 7, in <module>
File "build/bdist.macosx-10.6-universal/egg/gevent/core.py", line 6, in __bootstrap__
ImportError: dlopen(/Users/admin/.python-eggs/gevent-0.13.6-py2.6-macosx-10.6-universal.egg-tmp/gevent/core.so, 2): Symbol not found: _event_global_current_base_
Referenced from: /Users/admin/.python-eggs/gevent-0.13.6-py2.6-macosx-10.6-universal.egg-tmp/gevent/core.so
Expected in: flat namespace
in /Users/admin/.python-eggs/gevent-0.13.6-py2.6-macosx-10.6-universal.egg-tmp/gevent/core.so
这是怎么回事?安装过程中我没有收到任何错误
答案1
已为 github 修复
自由事件
首先,我喜欢通过 macports 来获取 libevent。如果你已经在系统上这样做了,请忽略这一点。
sudo ports install libevent
或者,您可以自己构建它或使用 Homebrew。顺便说一句,MacPorts 和 Homebrew 都使用较新的 Libevent2.XX 分支。
安装 cython
pip install cython
安装 greenlet(可选,因为 gevent 将构建它)。
pip install greenlet
克隆、构建、安装 gevent。
git clone https://github.com/gevent/gevent.git
我喜欢先构建 gevent 来查看一切是否正确。首先切换到 gevent 目录,然后:
python setup.py build
如果一切顺利,请继续安装:
python setup.py install