2011-06-21 79 views
41

我想用gevent进行试验,但安装完后我无法加载任何gevent模块。gevent在Ubuntu上安装不正确

安装步骤如下:

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 

我怀疑安装没有做它应该,但我不知道自己做错了什么。

回答

62

在Ubuntu 10.04与Python 2.6我不得不这样做:

 
apt-get install libevent-dev 
apt-get install python-all-dev 
easy_install greenlet 
easy_install gevent 

顺便说一句,在GEVENT很好的教程:http://sdiehl.github.com/gevent-tutorial/

+2

也适用于Ubuntu 14.04 – liangzan

16

在Ubuntu 10.10(及更高版本)中,gevent(和依赖关系)打包在Ubuntu存储库中。

在11.04:

$ sudo apt-get install python-gevent 
... 
$ python 
[email protected]:~$ 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 
+0

这是正确的,但它不是最新的。版本库的v0.13.0版本的日期从2010年7月...一年前。 – FabienB

4

我设法成功在 “巨蟒方式” 使用PIP进行安装。以下是我所做的:

我在某处看到,似乎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截至目前)。