我正在尝试使用需求文件安装 python 软件。
>> cat requirements.txt
Cython==0.15.1
numpy==1.6.1
distribute==0.6.24
logilab-astng==0.23.1logilab-common==0.57.1
netaddr==0.7.6
numexpr==2.0.1
ply==2.5
pycallgraph==0.5.1
pyflowtools==0.3.4.1
pylint==0.25.1
tables==2.3.1
wsgiref==0.1.2
所以我创建了一个虚拟环境
>> mkvirtualenv parser
(parser)
>> pip freeze
distribute==0.6.24
wsgiref==0.1.2
(parser)
>> pip install -r requirements.txt
...然后我下载了软件包但未安装并出现错误:http://pastie.org/4079800 http://pastie.org/4079800
(parser)
>> pip freeze
distribute==0.6.24
wsgiref==0.1.2
令人惊讶的是,如果我尝试手动安装每个软件包,它们安装得很好。
例如:
>> pip install numpy==1.6.1
(parser)
>> pip freeze
distribute==0.6.24
wsgiref==0.1.2
numpy==1.6.1
我搞不清楚了。到底是怎么回事?
PS:我正在使用pip
v1.1 和python
v2.7.2 与virtualenv
and virtualenvwrapper
它看起来像numexpr
包在安装时依赖于 numpy。 Pip 两次遍历您的需求:首先下载所有包并运行每个包setup.py
获取其元数据,然后在第二遍中安装它们。
因此,numexpr 试图在其 setup.py 中从 numpy 导入,但是当 pip 首次运行 numexpr 的 setup.py 时,它尚未安装 numpy。
这也是为什么你在逐一安装软件包时不会看到此错误的原因:如果一次安装一个软件包,numpy 将在你之前完全安装在你的环境中pip install
数值表达式。
唯一的解决办法就是安装pip install numpy
在你跑步之前pip install -r requirements.txt
-- 您将无法使用单个requirements.txt 文件在单个命令中执行此操作。
更多信息请点击这里:https://github.com/pypa/pip/issues/25 https://github.com/pypa/pip/issues/25
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)