2011-04-21 98 views
2

如果我使用--no-site-packages中选择,而创建的virtualenv并尝试安装MySQL-python的事后,我得到:的virtualenv GCC错误

error: command 'gcc' failed with exit status 1 

下面是我遵循的步骤:

easy_install-2.7 --install-dir ~/src/lib/ virtualenv==dev 
~/src/lib/virtualenv --no-site-packages ENV 
.../ENV/bin/pip-2.7 install MySQL-python 

我也尝试下载的mysql-Python和安装使用

.../ENV/bin/python setup.py build 

我得到同样的错误枯萎的方式。 我假设我错过了这个virtualenv的gcc,但是如何在仍使用--no-site-packages选项的情况下将它安装在这个virtualenv中。 谢谢

编辑:按照下面的注释这里是整个错误输出。

running build 
running build_py 
copying MySQLdb/release.py -> build/lib.linux-x86_64-2.7/MySQLdb 
running build_ext 
building '_mysql' extension 
gcc -m32 -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -fPIC -Dversion_info=(1,2,3,'final',0) -D__version__=1.2.3 -I/usr/include/mysql -I/opt/lampp/include/python2.7 -c _mysql.c -o build/temp.linux-x86_64-2.7/_mysql.o -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-strict-aliasing -fwrapv 
In file included from /opt/lampp/include/python2.7/Python.h:58, 
       from pymemcompat.h:10, 
       from _mysql.c:29: 
/opt/lampp/include/python2.7/pyport.h:849:2: error: #error "LONG_BIT definition appears wrong for platform (bad gcc/glibc config?)." 
In file included from /usr/include/mysql/my_config.h:11, 
       from _mysql.c:36: 
/usr/include/mysql/my_config_x86_64.h:1032:1: warning: "SIZEOF_LONG" redefined 
In file included from /opt/lampp/include/python2.7/Python.h:8, 
       from pymemcompat.h:10, 
       from _mysql.c:29: 
/opt/lampp/include/python2.7/pyconfig.h:989:1: warning: this is the location of the previous definition 
error: command 'gcc' failed with exit status 1 
+0

你会得到什么编译错误? – AndiDog 2011-04-21 13:44:25

+1

你看到了什么错误?你为什么要通过你的virtualenv等等?你为什么不直接从那里激活venv和pip? – 2011-04-21 13:45:12

+0

我不激活,因为我不需要。如果我转到virtualenv目录并从那里激活我的virtualenv python,则没有区别。所有激活的做法是将这些放在路径中,以便您可以使用virtualenv执行/ usr/bin/env python。我不是吗? – biomed 2011-04-21 14:13:27

回答

0

您是否尝试过使用sudo命令。我猜测你有许可问题,而不是其他问题。通常安装会抛出这个错误,因为它试图访问你不拥有的根权限的目录。

+1

使用virtualenv的主要原因是我在一个系统上我不能sudo – biomed 2011-04-24 04:45:12

1

你需要mysql-devel包。要安装,你需要指定实际的软件包名称 -

sudo apt-get install libmysql++-dev