web-dev-qa-db-fra.com

problème de pip python lors de l'installation à partir de Requirements.txt

J'ai eu beaucoup de chance avec pip dans le passé, mais travailler à l’installation de certaines choses dans un sens donné me donne des maux de tête .. Je continue à avoir des erreurs comme Aucune distribution trouvée pour somepackage Stockage du journal de débogage en cas d'échec dans /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

Je sais que ces paquets sont installés sur le système principal, mais c'est comme s'ils ne fonctionneraient pas sur le venv. Comment pouvez-vous résoudre ce problème? La journée a été longue et je ne comprends tout simplement pas quel est le problème, en particulier parce qu’ils fonctionnent sur mon système local, mais sur l’installation principale de Python sur mon système distant, mais pas dans le futur pour une raison folle. Des idées?

Voici les exigences, je pensais que c’était un peu intense pour Django, mais c’est ce que pip gel> 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
23
deltaskelta

Je vois quelques problèmes:

  1. Votre requirements.txt est destiné au système de base Python, pas à un environnement virtuel. Django n'a pas de dépendances externes.

  2. Vous utilisez l'utilisateur root pour installer des packages dans votre environnement virtuel (ou vous utilisez Sudo quand vous ne devriez pas).

La meilleure option est de recommencer à zéro:

$ virtualenv myvenv
...
$ source myvenv/bin/activate
(myvenv) $ pip install Django
...
(myvenv) $ pip freeze > requirements.txt
12
Burhan Khalid

Avait un problème similaire, mais la méthode ci-dessus n'a pas fonctionné pour moi. Clarifié avec une solution un peu plus simple:

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

UPDATE: Cette commande met à niveau tous les packages qui ont été explicitement répertoriés dans votre fichier requirements.txt.

Votre fichier requirements.txt est simplement une liste d'arguments d'installation pip placés dans un fichier. Ils sont utilisés pour conserver le résultat du gel des pipettes dans le but de réaliser des installations reproductibles. Dans ce cas, votre fichier requirements.txt contient une version épinglée de tout ce qui a été installé lors de l'exécution de pip freeze.

161
Nii Mantse

essayez pip install -r requirements.txt

Ça a fonctionné pour moi

21
abhishek thakur

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 les packages globaux. 

Deux options pour résoudre ce problème, soit mettre à niveau votre virtualenv: 

Sudo pip install virtualenv --upgrade
virtualenv venv

Ou utilisez l'ancien avec l'option no-site-packages:

virtualenv venv --no-site-packages

Cela a corrigé mon fichier Requirements.txt. 

3
chasmani

Sudo pip install -r requirements.txt ou pip install -r requirements.txt a travaillé pour moi

2
Juba FOURALI