这是问题所在
我有一个require.txt看起来像:
require.txt
BeautifulSoup==3.2.0 Django==1.3 Fabric==1.2.0 Jinja2==2.5.5 PyYAML==3.09 Pygments==1.4 SQLAlchemy==0.7.1 South==0.7.3 amqplib==0.6.1 anyjson==0.3 ...
我有一个本地存档目录,其中包含所有软件包和其他软件包。
我创建了一个新的virtualenv
virtualenv
bin/virtualenv testing
激活它后,我尝试根据本地存档目录中的requirements.txt安装软件包。
requirements.txt
source bin/activate pip install -r /path/to/requirements.txt -f file:///path/to/archive/
我得到一些输出,似乎表明安装正常
Downloading/unpacking Fabric==1.2.0 (from -r ../testing/requirements.txt (line 3)) Running setup.py egg_info for package Fabric warning: no previously-included files matching '*' found under directory 'docs/_build' warning: no files found matching 'fabfile.py' Downloading/unpacking South==0.7.3 (from -r ../testing/requirements.txt (line 8)) Running setup.py egg_info for package South ....
但后来检查发现该软件包均未正确安装。我无法导入软件包,但在virtualenv的site-packages目录中找不到任何软件包。那么出了什么问题?
site-packages
这对我有用:
$ pip install -r requirements.txt --no-index --find-links file:///tmp/packages
–no-index-忽略软件包索引(仅查看–find-linksURL)。
no-index
find-linksURL
-f, --find-links <URL>-如果是HTML文件的URL或路径,则解析到归档文件的链接。如果是file://目录的本地路径或URL,请在目录列表中查找档案。
-f, --find-links <URL>
file://
我已经阅读了上面的内容,意识到这是一个古老的问题,但它仍未解决,仍位于我的Google搜索结果的顶部,因此,这是一个适用于所有人的答案:
pip install -r /path/to/requirements.txt