2012-10-16 19 views
16

ho bisogno di installare psycopg2 per il processo di installazione openerp, ma ho sempre trovato quell'errore. ho già usato pip e easy_install, il mio gcc è l'ultima versione. Davvero bisogno del vostro aiuto per risolvere il mio problema ...errore: comando 'gcc' fallito con stato di uscita durante l'installazione di psycopg2

questo è il mio errore completo di easy_install ..

[[email protected] ~]# easy_install psycopg2  
Searching for psycopg2  
Reading http://pypi.python.org/simple/psycopg2/  
Reading http://initd.org/psycopg/  
Reading http://initd.org/projects/psycopg2  
Best match: psycopg2 2.4.5  
Downloading http://initd.org/psycopg/tarballs/PSYCOPG-2-4/psycopg2-2.4.5.tar.gz  
Processing psycopg2-2.4.5.tar.gz  
Running psycopg2-2.4.5/setup.py -q bdist_egg --dist-dir /tmp/easy_install-anWVvJ/psycopg2-2.4.5/egg-dist-tmp-cZbdtn 

no previously-included directories found matching 'doc/src/_build' In file included from psycopg/psycopgmodule.c:27: 
./psycopg/psycopg.h:31:22: error: libpq-fe.h: No such file or directory In file included from psycopg/psycopgmodule.c:29: 

... 

error: Setup script exited with error: command 'gcc' failed with exit status 1 

risposta

2

L'invocazione del gcc fallito, gcc non poteva compilare il sorgente. Probabilmente la causa è

./psycopg/psycopg.h:31:22: error: libpq-fe.h: No such file or directory In file included from psycopg/psycopgmodule.c:29: 

che l'intestazione libpq-fe.h è in nessuna parte del percorso di ricerca se avete affatto.

+0

Cosa devo fare con libpq-fe.h? potresti darmi ulteriori spiegazioni? –

+0

Controlla se ce l'hai. In caso contrario, installare il pacchetto che lo fornisce, 'libpq-devel' o' libpq-dev' o qualcosa di simile, a seconda della distribuzione. –

31

Avrai bisogno di installare il pacchetto di sviluppo per PostgreSQL, che per esempio sotto Ubuntu è un sudo apt-get install libpq-dev ... e per CentOS E 'yum install postgresql-devel

+7

ho fatto ma ancora con lo stesso errore .. –

14

Possa il vostro sistema manca le intestazioni Python. Per risolvere questo problema, eseguire:

sudo apt-get install python-dev 

o

sudo apt-get install python3-dev 
+0

questo ha funzionato per me – tomwolber

+1

ho cercato 30 min. Installato python-psycopg2, postgresql-server-dev-9.1, postgresql-plpython-9.1 e libpq-dev. Ancora "gcc" fallito con exit status 1. Ora con python-dev funziona bene ;-) – surfi

+2

a meno che tu non stia usando CentOS – hafichuk

26

Per il caso di CentOS, ho avuto questo stesso problema, che ho risolto l'installazione di questi pacchetti:

sudo yum install postgresql-libs 
sudo yum install postgresql-devel 
sudo yum install python-devel 

solo allora , Sono stato in grado di eseguire con successo:

sudo easy_install psycopg2 
+6

Grazie per non aver assunto che tutti usino Debian. +1 – hafichuk

1

Per me, il pacchetto che mancava era

libpqxx-devel.x86_64 
1

Questo ha funzionato per me su Ubuntu Server 14.10 a 64 bit:

sudo apt-get install libpqxx-dev 
2

Per Ubuntu 14.04, da un'immagine Docker python:3.4.3-slim questa combinazione ha funzionato per me:

sudo apt-get update 
sudo apt-get install -y build-essential 
sudo apt-get install -y python3.4-dev 
sudo apt-get install -y libpq-dev 

pip3 install psycopg2 

Note pacchetto build-essential. Era cruciale nel mio caso.

+1

Man Ho provato tutto prima che questo risolvesse il problema. Inoltre, eseguendo un'immagine docker, ho appena copiato il codice nel mio file docker e ha funzionato come un incantesimo – Simon

7

Su Ubuntu 14.04.2 LTS fresca su un'istanza EC2, sono stato in grado di installare psycopg2 dopo instaling i seguenti pacchetti:

sudo apt-get install gcc 
sudo apt-get install postgres-xc-server-dev 
sudo apt-get install libpq-dev 
sudo apt-get install postgresql-client-common 
sudo apt-get install postgresql-common 

E su un Linux AMI fresca (CentOS) esempio:

sudo yum install postgresql-devel 
sudo yum install gcc* 

Speranza che aiuta,

Erez

5

ho cercato di inst tutto pgsql su una semplice istanza di Amazon Linux EC2 e ho ricevuto questo errore. Per la risposta di Nicolás, ho installato la sua lista di pacchetti suggeriti, ma ho continuato a ricevere l'errore.Guardando più da vicino l'errore, ho notato che il comando gcc era inclusi i file pgsql93:

gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -DPSYCOPG_DEFAULT_PYDATETIME=1 -DPSYCOPG_VERSION="2.6.1 (dt dec pq3 ext lo64)" -DPG_VERSION_HEX=0x09030A -DHAVE_LO64=1 -I/usr/include/python2.7 -I. -I/usr/include/pgsql93 -I/usr/include/pgsql93/server -c psycopg/psycopgmodule.c -o build/temp.linux-x86_64-2.7/psycopg/psycopgmodule.o -Wdeclaration-after-statement

Guardando in /usr/include/ vedo pgsql92/ ma non pgsql93/. Così ho preso uno sguardo a quello che sono stati installati i pacchetti yum pgsql legati e ho notato questi:

postgresql92.x86_64 postgresql92-devel.x86_64 postgresql92-libs.x86_64 postgresql93.x86_64 postgresql93-libs.x86_64

mi sembrava che ci dovrebbe essere un postgresql93-devel, così ho provato:

sudo yum install postgresql93-devel

E questo ha risolto il problema per me! Quindi immagino che il tema sia: Guarda la chiamata gcc, e guarda che cosa sta tirando in. Segui le briciole da lì.

3

In centos 7. userei sudo yum install postgresql96-devel.x86_64 per risolvere il mio problema.

Problemi correlati