无法让Virtualenv导入Numpy

时间:2013-03-23 20:37:07

标签: python-2.7 numpy import ubuntu-12.04 virtualenv

我遇到了所有图书馆的问题,但让我关注numpy。如果我在virtualenv之外,我可以进入Python解释器并执行:

import numpy

这是有效的。但如果我进入virtualenv并试一试:

$ workon test
(test):~/Project/test$ python

>>> import numpy
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named numpy

经过数小时的Google搜索后,我认为问题必须在于我对virtualenvvirtualenvwrapper的理解。我试过了明显的事情:

(test):~/Projects/test$ pip install numpy

但我得到了错误:

SystemError: Cannot compile 'Python.h'. Perhaps you need to install python-dev|python-devel.

我也尝试过sudo apt-get install python-dev,但得到了错误:

The following packages have unmet dependencies:
 python-dev : Depends: python2.7-dev (>= 2.7.3) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

我正在Python2.7.3上运行Ubuntu 12.04并让PyDev(没有virtualenv)运行一个当前导入库(如numpy)的项目,没有任何问题。我尝试使用Ubuntu软件中心安装python-dev,但我也遇到了相同的错误。

1 个答案:

答案 0 :(得分:4)

默认情况下,

virtualenv不允许您从全局环境导入包。使用[mk]virtualenv --system-site-packages允许它导入系统包。

python-dev是一个系统包,因此预计会出现pip错误。不确定apt错误,但您可以要求askubuntu.com尝试解决它。​​