3

我对虚拟环境中 pip 的行为有一个非常奇怪的问题。

我已经设定

export PIP_REQUIRE_VIRTUALENV=true
export PIP_DOWNLOAD_CACHE=$HOME/.pip/cache
export VIRTUALENV_DISTRIBUTE=true

现在,当我在我的 virtualenv 中并想要安装我的依赖项时:

pip install -r requirements/_base.txt

(出于测试目的, requirements/_base.txt 仅包含:)

Django==1.5

无论如何,当我尝试安装它时,我只会得到:

Downloading/unpacking Django==1.5 (from -r requirements/_base.txt (line 1))
Running setup.py egg_info for package Django

warning: no previously-included files matching '__pycache__' found under directory '*'
warning: no previously-included files matching '*.py[co]' found under directory '*'

之后,没有安装 Django。

奇怪的部分来了:当我手动安装 Django 时

pip install Django==1.5

它运行良好(尽管出现了相同的两个警告):

Downloading/unpacking Django==1.5
Running setup.py egg_info for package Django

warning: no previously-included files matching '__pycache__' found under directory '*'
warning: no previously-included files matching '*.py[co]' found under directory '*'
Installing collected packages: Django
Running setup.py install for Django
changing mode of build/scripts-2.7/django-admin.py from 644 to 755

warning: no previously-included files matching '__pycache__' found under directory '*'
warning: no previously-included files matching '*.py[co]' found under directory '*'
changing mode of /usr/local/share/python/django-admin.py to 755
Successfully installed Django
Cleaning up...
4

2 回答 2

0

我遇到了类似的问题,并意识到删除版本要求解决了这个问题。虽然不知道为什么...

于 2014-11-07T13:26:01.280 回答
0

我弄清楚为什么这会发生在我身上,这也可能为看到此页面的其他人解决问题。对我来说,问题是我有一个不能通过 pip 自动安装的要求。pip freeze 导出了包名称和版本,但无论出于何种原因,pip 都无法直接在需求安装中安装该包。我必须改为从 zip 文件手动安装它。

那么,您可能遇到的问题是您有一个无法通过 pip 的需求安装程序安装的需求。检查您的输出日志中是否有红色文本、错误等。

我用这篇文章弄清楚了这一点: pip failed to install packages from requirements.txt

于 2014-12-16T22:22:48.563 回答