我遇到了所有图书馆的问题,但让我关注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搜索后,我认为问题必须在于我对virtualenv
和virtualenvwrapper
的理解。我试过了明显的事情:
(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
,但我也遇到了相同的错误。
答案 0 :(得分:4)
virtualenv不允许您从全局环境导入包。使用[mk]virtualenv --system-site-packages
允许它导入系统包。
python-dev
是一个系统包,因此预计会出现pip
错误。不确定apt错误,但您可以要求askubuntu.com尝试解决它。