2011-01-27 18 views
17

Estoy tratando de instalar psycopg2 en CentOS, seguí todo en este tutorial desde "On it it: Instalando Python 2.6" hasta cuando importa psycopg2, pero cuando intento importar I recibe el siguiente error:Problema al instalar psycopg2 en 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 

¿Cómo solucionar problemas?

+0

Esto le dará a la versión actual instalada: Pitón -c "psycopg2 importación; impresión (psycopg2 .__ version__) " – MacGyver

Respuesta

19

psycopg2 es un contenedor de python alrededor de las bibliotecas de PostgreSQL, por lo que necesita las instaladas en su sistema también.

Dado que está utilizando CentOS, intente esto desde la línea de comandos para instalar las librerías de postgre.

yum install postgresql-libs

+1

Holy macaroni thx !!! – hdx

+0

parece que AWS dice "yum no tiene postgresql-libs" o "-lib" – Surya

+0

CentOS 6.2 dice: "No hay paquete postgresql-libs disponible" –

19
  1. olvidado el tutorial.
  2. Install EPEL
  3. yum install python-psycopg2

Django supports Python 2.4 bien. Si realmente necesitas Python 2.6 también puedes usar EPEL (yum install python26), pero todavía no hay un paquete de psycopg2.

+0

en amz linux en el momento de escribir esto, el paso 3 es suficiente – user602525

3

que siguió a la primera respuesta para instalar librerías Python:

yum install postgresql-lib 

pero no funcionó, por lo que también se ha instalado un yum del devel y Python:

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

No está seguro cuál lo hizo, pero mi suposición es el desarrollo.

+1

¿Por qué los comentarios negativos? INdeed "postgresql-devel" es obligatorio. – Stefano

+0

@Coaden debe usar "postgresql-libs" con una "s" al final – stupidbodo

+0

yum install postgresql-devel es lo que también tuve que hacer en centos 7 – beardedeagle

-3

para Ubuntu que querrá

sudo apt-get install python2.7-psycopg2

o si está usando Python 3

sudo apt-get install python3-psycopg2

+0

no estoy seguro de por qué obtuvo algunos votos negativos: votado previamente por ser útil para otros usuarios de ubuntu – Alvin

+0

probablemente porque plpython no es psycopg2, son cosas muy diferentes – eseglem

+1

Creo que construir valor sería la respuesta de edición – Alvin