我想试用gevent,但在安装后我无法加载任何gevent模块。
安装步骤如下:
sudo apt-get install libevent-dev
sudo pip install greenlet
sudo pip install gevent
环境设置是Ubuntu 10.10 x86_64 GNU / Linux。
当我尝试做一个简单的测试时,我得到:
>>> import gevent
>>> from gevent import socket
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: cannot import name socket
我怀疑安装没有做它应该做的事情,但我不确定是什么问题。
答案 0 :(得分:65)
在使用python 2.6的Ubuntu 10.04上,我必须这样做:
apt-get install libevent-dev apt-get install python-all-dev easy_install greenlet easy_install gevent
顺便说一下,关于Gevent的好教程:http://sdiehl.github.com/gevent-tutorial/
答案 1 :(得分:16)
在Ubuntu 10.10(及更高版本)中,gevent(和依赖项)打包在Ubuntu存储库中。
于11.04:
$ sudo apt-get install python-gevent
...
$ python
corey@lenovo:~$ python
Python 2.7.1+ (r271:86832, Apr 11 2011, 18:13:53)
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import gevent
>>> from gevent import socket
>>> print gevent.__version__
0.13.0
答案 2 :(得分:4)
我设法成功使用pip以“python方式”安装。这是我做的:
我在某处看到,似乎Ubuntu的设置工具已经坏了。如果要安装软件包,则会报告
UserWarning:setuptools的未构建的鸡蛋 [未知版本] (/usr/lib/python2.6/dist-packages)
这些命令可以重新设置设置工具:
sudo rm -rf /usr/lib/python2.6/dist-packages/setuptools.egg-info/
sudo apt-get install --reinstall python-setuptools
在此之后,我尝试用pip的--upgrade参数重新安装这两个软件包。它没有帮助,但我尝试了easy_install并且它有效。我在pip之前尝试过它,但是破坏的设置工具阻止它工作。
sudo easy_install greenlet
sudo easy_install gevent
你去了,最新版本(截至目前为0.13.6)。
答案 3 :(得分:0)
尝试了zzart发布的内容,但在Ubuntu Trusty Tahr(14.04)上仍然出现错误:
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2583, in scan_list
"Expected ',' or end-of-list in",line,"at",line[p:]
ValueError: ("Expected ',' or end-of-list in", "cffi >= 1.11.5 ; sys_platform == 'win32' and platform_python_implementation == 'CPython'", 'at', " ; sys_platform == 'win32' and platform_python_implementation == 'CPython'")
此问题已解决:
sudo pip install --upgrade setuptools pip
sudo easy_install gevent