我对虚拟环境中pip的行为有一个非常奇怪的问题。
我已经设置
export PIP_REQUIRE_VIRTUALENV=true
export PIP_DOWNLOAD_CACHE=$HOME/.pip/cache
export VIRTUALENV_DISTRIBUTE=true
现在,当我在我的虚拟环境中,想要安装我的依赖项:
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不会被安装。下面是奇怪的部分:当我用
手动安装Djangopip 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...
我遇到了一个类似的问题,并意识到删除版本需求解决了这个问题。不知道为什么…
我明白了为什么这种情况会发生在我身上,这也可以解决其他人看到这个页面的问题。对我来说,问题是我有一个不能通过pip自动安装的需求。pip冻结导出了包的名称和版本,但是由于某种原因,pip不能在需求安装中直接安装该包。我必须从一个zip文件中手动安装它。
那么,您可能遇到的问题是,您有一个需求不能由pip的需求安装程序安装。检查你的输出日志是否有红色文本、错误之类的东西。
我用这篇文章发现了这个问题:PIP从requirements.txt