我正在使用以下requirements.txt
文件在Ubuntu 12.04中安装几个Python软件包:
numpy>=1.8.2,<2.0.0
matplotlib>=1.3.1,<2.0.0
scipy>=0.14.0,<1.0.0
astroML>=0.2,<1.0
scikit-learn>=0.14.1,<1.0.0
rpy2>=2.4.3,<3.0.0
和这两个命令:
$ pip install --download=/tmp -r requirements.txt
$ pip install --user --no-index --find-links=/tmp -r requirements.txt
(第一个下载软件包,第二个安装软件包)。
该过程经常因错误而停止:
Could not find a version that satisfies the requirement <package> (from matplotlib<2.0.0,>=1.3.1->-r requirements.txt (line 2)) (from versions: )
No matching distribution found for <package> (from matplotlib<2.0.0,>=1.3.1->-r requirements.txt (line 2))
我用以下方法手动修复:
pip install --user <package>
然后pip install
再次运行第二个命令。
但这仅适用于该特定程序包。当我pip install
再次运行第二个命令时,该过程现在停止,并抱怨另一个必需的程序包,我需要再次重复该过程,即:手动安装新的必需程序包(使用上面的命令),然后运行第二个pip install
命令。
到目前为止,我不得不手动安装six
,pytz
,nose
,现在它在抱怨需要mock
。
有没有办法告诉pip
您自动安装所有需要的依赖项,所以我不必一个个手动地进行安装?
添加:这仅在Ubuntu 12.04 BTW中发生。在Ubuntu 14.04中,pip install
应用于requirements.txt
文件的命令可以正常工作。