python pip从requirements.txt安装麻烦

时间:2015-01-27 10:17:23

标签: python pip virtualenv

我过去曾经和pip一起运气很好,但是在安装一些东西上工作让我有些头疼。 我不断收到错误     没有发现某些包的发行版在/root/.pip/pip.log中存储失败的调试日志

Could not find any downloads that satisfy the requirement somepackage

Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-RjqjFW/psycopg2

我知道这些软件包安装在主系统上,但它们不会在venv上运行。你们如何解决这个问题?这是一个漫长的一天,我只是不明白问题是什么,特别是因为他们在我的本地系统上工作,他们在我的远程系统上的主要python安装工作,但由于一些疯狂的原因不在venv。有什么想法吗?

这是要求,我认为它对于django而言非常强烈,但那就是pip冻结> requirements.txt给了我

Babel==1.3
Django==1.7.1
Fabric==1.10.1
Flask==0.10.1
Flask-Babel==0.9
Flask-Login==0.2.11
Flask-Mail==0.9.1
Flask-OpenID==1.2.4
Flask-SQLAlchemy==2.0
Flask-WTF==0.10.3
Flask-WhooshAlchemy==0.56
Jinja2==2.7.3
MarkupSafe==0.23
PAM==0.4.2
Pillow==2.3.0
Pygments==1.6
Scrapy==0.24.4
Sphinx==1.2.2
Tempita==0.5.2
WTForms==2.0.1
Werkzeug==0.9.6
Whoosh==2.6.0
adium-theme-ubuntu==0.3.4
apt-xapian-index==0.45
argparse==1.2.1
backports.ssl-match-hostname==3.4.0.2
blinker==1.3
boto==2.20.1
bottle==0.12.7
certifi==14.05.14
chardet==2.0.1
colorama==0.2.5
command-not-found==0.3
coverage==3.7.1
cssselect==0.9.1
debtagshw==0.1
decorator==3.4.0
defer==1.0.6
dirspec==13.10
docutils==0.11
duplicity==0.6.23
ecdsa==0.11
flipflop==1.0
guess-language==0.2
guppy==0.1.9
html5lib==0.999
httplib2==0.8
ipython==2.3.1
itsdangerous==0.24
lockfile==0.8
lxml==3.3.3
nose==1.3.4
numpy==1.8.2
oauthlib==0.6.1
oneconf==0.3.7
paramiko==1.15.2
pbr==0.10.7
pexpect==3.1
piston-mini-client==0.7.5
psycopg2==2.5.4
pyOpenSSL==0.13
pyasn1==0.1.7
pycrypto==2.6.1
pycups==1.9.66
pycurl==7.19.3
pygame==1.9.1release
pygobject==3.12.0
pyserial==2.6
pysmbc==1.0.14.1
python-apt==0.9.3.5ubuntu1
python-debian==0.1.21-nmu2ubuntu2
python-openid==2.2.5
pytz==2014.10
pyxdg==0.25
queuelib==1.2.2
reportlab==3.0
requests==2.2.1
roman==2.0.0
sessioninstaller==0.0.0
simplegeneric==0.8.1
six==1.5.2
software-center-aptd-plugins==0.0.0
speaklater==1.3
sqlalchemy-migrate==0.9.2
sqlparse==0.1.14
system-service==0.1.6
tornado==4.0.2
unity-lens-photos==1.0
urllib3==1.7.1
virtualenv==1.11.6
w3lib==1.10.0
wsgiref==0.1.2
wxPython==2.8.12.1
wxPython-common==2.8.12.1
xdiagnose==3.6.3build2
z3c.xmlhttp==0.5.1
zope.interface==4.0.5
zope.publisher==4.0.0a4
zope.traversing==4.0.0
zope.viewlet==4.0.0a1

6 个答案:

答案 0 :(得分:170)

有类似的问题,但上述方法对我不起作用。用一个相当简单的解决方案澄清它:

(venv) $ pip install --upgrade -r requirements.txt

<强>更新 此命令升级已在requirements.txt文件中明确列出的所有包。

您的requirements.txt文件只是放在文件中的pip安装参数列表。它们用于保持pip冻结的结果,以实现可重复的安装。在这种情况下,您的requirements.txt文件包含运行pip冻结时安装的所有内容的固定版本。

答案 1 :(得分:27)

尝试pip install -r requirements.txt

它对我有用

答案 2 :(得分:13)

我看到一些问题:

  1. 您的requirements.txt适用于基本系统Python,而不适用于任何虚拟环境。 Django没有任何外部依赖。

  2. 您正在使用root用户在虚拟环境中安装软件包(或者您不应该使用sudo

  3. 最好的选择是从头开始:

    $ virtualenv myvenv
    ...
    $ source myvenv/bin/activate
    (myvenv) $ pip install django
    ...
    (myvenv) $ pip freeze > requirements.txt
    

答案 3 :(得分:3)

我有这个问题,但有不同的原因 - 我有一个旧版本的virtualenv。在1.7版之前,当您创建虚拟环境以不包括全局包时,必须指定选项--no-site-packages。

解决此问题的两个选项,要么升级你的virtualenv:

sudo pip install virtualenv --upgrade
virtualenv venv

或者使用no-site-packages选项的旧版本:

virtualenv venv --no-site-packages

修复了我的requirements.txt文件。

答案 4 :(得分:3)

sudo pip install -r requirements.txt pip install -r requirements.txt为我工作

答案 5 :(得分:0)

以下解决方案对我有用:

(my-virtualenv) 20:42 ~/MyPf (master)$ pip freeze > requirements.txt | 
(my-virtualenv) 20:43 ~/MyPf (master)$ pip install -r requirements.txt