通常你会希望所有的包都声明它们的依赖关系,但有时这是你无法控制的,对于大型或复杂的包来说,“fork it”并不容易。
例如,SciPi 需要 NumPy,但没有指定它。因此,对于您无法控制的软件包,有没有办法告诉 setup.py 或 pip 以特定顺序安装?
2015 年 4 月 13 日更新:正如@Garrett 评论的那样,安装顺序行为在 pip v6.1.0 中发生了变化。取自pip v7.0.0.dev0 文档:
从 v6.1.0 开始,pip 在其依赖项之前安装依赖项,即按“拓扑顺序”。这是目前唯一与订单相关的承诺点。虽然 pip 将按照安装参数的顺序或需求文件中的项目的顺序安装东西可能是巧合的,但这并不是一个承诺。
初步答案(过时):
使用带有pip
. 由于 0.8.3 版本pip
按照它们在需求文件中列出的顺序安装包。