2015-01-27 25 views
16

Ho avuto molta fortuna con pip in passato, ma lavorare all'installazione di alcune cose in un film mi sta dando dei grattacapi. continuo a ricevere errori come Nessun distribuzioni a tutti trovati per somepackage Memorizzazione di registro di debug per il fallimento in /root/.pip/pip.logpython pip problemi di installazione da requirements.txt

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 

So che questi pacchetti sono installati sul sistema principale, ma è come non funzioneranno sul venv. Come fai a risolvere questo problema? È stata una lunga giornata e semplicemente non capisco quale sia il problema, soprattutto perché lavorano sul mio sistema locale, funzionano sull'installazione python principale sul mio sistema remoto, ma non nel venv per qualche motivo pazzesco. Qualche idea?

Ecco i requisiti, ho pensato che era un tantino intenso per Django, ma è ciò che PIP congelare> requirements.txt mi ha dato

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 
+0

Potete per favore pubblicare i vostri requisiti.txt nella vostra domanda per noi per provare a riprodurre il problema? – StaticX

+0

Stai provando ad installarlo su Windows? Non sono mai riuscito a installare psycopg2 su Windows usando pip (in un virtualenv). Ho dovuto scaricare l'installer ed eseguire "path/to/venv/bins/easy_install psycopg2_package.exe". – maccinza

+0

No Sono su Ubuntu. i requisiti sono pubblicati sopra – deltaskelta

risposta

5

Vedo alcuni problemi:

  1. tuo requirements.txt è per il sistema di base Python, non per alcun ambiente virtuale. Django non ha dipendenze esterne.

  2. Si sta utilizzando l'utente root per installare i pacchetti nel proprio ambiente virtuale (oppure si sta utilizzando sudo quando non si dovrebbe).

L'opzione migliore è quella di ripartire da zero:

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

ok si non mi sono reso conto che l'utilizzo del comando sudo mi stava liberando dal venv. Un problema che ho finora con questo metodo. Ricevo un errore quando provo a eseguire manage.py perché manca il modulo psycopg2. Errore: è necessario installare postgresql-server-dev-X.Y per creare un'estensione lato server o libpq-dev per creare un'applicazione lato client. – deltaskelta

+1

Questa è una domanda completamente diversa. Prova 'sudo apt-get build-dep python-psycopg2' per compilare i requisiti, quindi devi installare effettivamente pyscopg2 nel tuo ambiente virtuale con' pip install psycopg2' –

+0

ok ho capito ora, era solo confuso quando uscire all'ambiente principale per fare qualcosa e quando installarlo all'interno di venv – deltaskelta

95

avuto un problema simile, ma il metodo di cui sopra non ha funzionato per me. Chiarito con una soluzione piuttosto semplice:

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

Questo dovrebbe avviare un aggiornamento e installare dal vostro requirements.txt file di

+2

Cosa aggiorna questo comando? la versione del pacchetto o qualcos'altro? –

+1

Ho avuto lo stesso identico problema e questo ha funzionato per me. –

+1

KishorPawar, come ho detto prima, dovrebbe avviare un aggiornamento e un'installazione dal file requirements.txt al tuo ambiente virtuale –

0

Ho avuto questo problema, ma con una causa diversa - ho avuto una vecchia versione di virtualenv. Prima della versione 1.7 bisognava specificare l'opzione --no-site-packages quando si creava l'ambiente virtuale per non includere i pacchetti globali.

due opzioni per risolvere questo problema, o aggiornare il proprio virtualenv:

sudo pip install virtualenv --upgrade 
virtualenv venv 

oppure utilizzare quello vecchio con l'opzione no-site-packages:

virtualenv venv --no-site-packages 

quello fissato il mio file requirements.txt .

Problemi correlati