2011-01-27 19 views
17

Sto tentando di installare psycopg2 su CentOS, ho seguito tutto su questo tutorial da "On with it: Installazione di Python 2.6" fino a quando importa psycopg2, ma quando provo a importare I ottenere il seguente errore:Problemi nell'installazione di psycopg2 su CentOS

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/opt/python2.6/lib/python2.6/site-packages/psycopg2/__init__.py", line 69, in <module> 
    from _psycopg import BINARY, NUMBER, STRING, DATETIME, ROWID 
ImportError: libpq.so.5: cannot open shared object file: No such file or directory 

Come risolvere questo?

+0

Questo darà la versione corrente installata: python -c "import psycopg2; stampa (psycopg2 .__ version__) " – MacGyver

risposta

19

psycopg2 è un wrapper python attorno alle librerie PostgreSQL, quindi è necessario che siano installati anche sul sistema.

Poiché si utilizza CentOS, provare questo dalla riga di comando per installare le librerie di Postgre.

yum install postgresql-libs

+1

Holy macaroni thx !!! – hdx

+0

sembra AWS che dice "yum non ha postgresql-libs" o "-lib" – Surya

+0

CentOS 6.2 dice: "Nessun pacchetto postgresql-libs disponibile" –

19
  1. Dimenticate il vostro tutorial.
  2. Install EPEL
  3. yum install python-psycopg2

Django supports Python 2.4 bene. Se hai davvero bisogno di Python 2.6 puoi anche usare EPEL (yum install python26) - ma non c'è ancora un pacchetto psycopg2.

+0

su amz linux al momento della stesura di questo, il passaggio 3 è sufficiente – user602525

3

Ho seguito la prima risposta di installare librerie python:

yum install postgresql-lib 

ma non ha funzionato, così ho anche fatto un yum install del devel e pitone:

yum install postgresql91-devel.x86_64 
yum install postgresql91-python.x86_64 

Non è sicuro quale l'ha fatto, ma la mia ipotesi è lo sviluppo.

+1

Perché i commenti negativi? È necessario "postgresql-devel"! – Stefano

+0

@Coaden dovresti usare "postgresql-libs" con una "s" alla fine – stupidbodo

+0

yum install postgresql-devel è quello che dovevo fare anche su Centos 7 – beardedeagle

-3

per Ubuntu si vorrà

sudo apt-get install python2.7-psycopg2

o se si utilizza python 3

sudo apt-get install python3-psycopg2

+0

non so perché questo ha avuto qualche down-vote - was up-votato in precedenza per essere utile ad altri utenti di Ubuntu – Alvin

+0

probabilmente perché plpython non è psycopg2, sono cose molto diverse – eseglem

+1

Penso che il valore dell'edificio cambierà la risposta – Alvin