【发布时间】:2014-03-08 09:29:29
【问题描述】:
我正在运行本地 pypi server。我可以通过使用pip 命令的-i 选项或设置PIP_INDEX_URL 环境变量来从该服务器安装软件包。当我安装具有先决条件的软件包时,setup.py 历来尊重 PIP_INDEX_URL 环境变量,从我的本地服务器中提取额外的软件包。
但是,在最近安装的几个系统上,它的行为有所不同。例如,运行 python setup.py develop 失败,因为它尝试从 pypi.python.org 安装必备软件包。
我已经在我正在测试的所有系统上更新了所有相关的 python 包(python、distribute、virtualenv、pip 等...),并继续看到这种差异。在我的“原始”系统上,setup.py 从我的PIP_INDEX_URL 环境变量中指定的pypi 服务器下载先决条件。在较新的系统上,我似乎无法让它尊重这个变量。
我错过了什么?
【问题讨论】:
-
看来stackoverflow.com/questions/3472430/… 部分回答了这个问题。它没有解释为什么环境变量被不一致地尊重,但它确实告诉我如何通过指定dependency_links来解决我的问题。
-
我终于找到了罪魁祸首。在旧服务器上,我有一个
~/.pydistutils文件,它指示 easy_install 使用我的 pypi 服务器。在新服务器上创建此文件后,我的部署再次工作。它仍然不使用 PIP_INDEX_URL 变量,但这给了我一个解决方法。