problème d'installation python pip à partir d'exigences.txt

j'ai eu beaucoup de chance avec pip dans le passé, mais travailler à installer des trucs dans un véhicule me donne des maux de tête. J'ai toujours des erreurs comme Aucune distribution n'a été trouvée pour somepackage stockant le log de débogage en cas d'échec dans /root/.pip / pip.journal

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

je sais que ces paquets sont installés sur le système principal, mais c'est comme s'ils ne fonctionnaient pas sur le venv. Comment voulez-vous obtenir tout autour de ce problème? La journée a été longue et je ne comprends pas quel est le problème., surtout parce qu'ils travaillent sur mon système local, ils travaillent sur l'installation principale de python sur mon système distant, mais pas dans le venv pour une raison folle. Des idées?

Voici les exigences, j'ai pensé que c'était un peu intense pour django, mais c'est ce que pip gèle > exigences.txt m'a donné

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
21
demandé sur deltaskelta 2015-01-27 13:17:22

5 réponses

je vois quelques problèmes:

  1. requirements.txt est pour le système de base Python, pas n'importe quel environnement virtuel. Django n'a pas de dépendances externes.

  2. vous utilisez l'utilisateur root pour installer des paquets dans votre environnement virtuel (ou vous utilisez sudo lorsque vous ne devriez pas).

La meilleure option est de commencer à partir de zéro:

$ virtualenv myvenv
...
$ source myvenv/bin/activate
(myvenv) $ pip install django
...
(myvenv) $ pip freeze > requirements.txt
9
répondu Burhan Khalid 2015-01-27 10:38:48

Avait un problème similaire, mais la méthode ci-dessus ne fonctionne pas pour moi. A précisé qu'il à une solution plus simple:

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

mise à jour: Cette commande met à jour tous les paquets qui ont été explicitement listés dans votre requirements.txt fichier.

requirements.txt file est juste une liste d'arguments pip install placés dans un fichier. Ils sont utilisés pour contenir le résultat du gel pip dans le but de réaliser des installations reproductibles. Dans ce cas, votre requirements.txt le fichier contient une version épinglée de tout ce qui a été installé lorsque pip freeze a été lancé.

138
répondu Nii Mantse 2018-10-11 11:02:52

pip install -r requirements.txt

Il a travaillé pour moi

8
répondu abhishek thakur 2018-05-27 06:56:50

j'ai eu ce problème mais avec une cause différente - j'avais une ancienne version de virtualenv. Avant la version 1.7, vous deviez spécifier l'option -- no-site-packages lorsque vous créez l'environnement virtuel pour ne pas inclure de paquets globaux.

deux options pour corriger cela, soit mettre à jour votre virtualenv:

sudo pip install virtualenv --upgrade
virtualenv venv

ou utilisez l'ancienne avec l'option no-site-packages:

virtualenv venv --no-site-packages

cela a corrigé mes besoins.fichier txt.

2
répondu chasmani 2016-04-26 10:04:22

sudo pip install -r requirements.txtoupip install -r requirements.txt a fonctionné pour moi

0
répondu Juba FOURALI 2018-10-05 18:29:23