224 votos

Ejecutable pg_config no encontrado

Tengo problemas para instalar psycopg2. Recibo el siguiente error cuando intento pip install psycopg2:

Error: ejecutable pg_config no encontrado.

Por favor, agregue el directorio que contiene pg_config al PATH

o especifique la ruta completa del ejecutable con la opción:

    python setup.py build_ext --pg-config /path/to/pg_config build ...

o con la opción pg_config en 'setup.cfg'.

----------------------------------------
El comando python setup.py egg_info falló con el código de error 1 en /tmp/pip-build/psycopg2

Pero el problema es que pg_config está realmente en mi PATH; se ejecuta sin ningún problema:

$ which pg_config
/usr/pgsql-9.1/bin/pg_config

Intenté agregar la ruta de pg_config al archivo setup.cfg y compilarlo usando los archivos fuente que descargué de su sitio web (http://initd.org/psycopg/) ¡y obtengo el siguiente mensaje de error!

Error: No se puede encontrar el archivo 'pg_config' en '/usr/pgsql-9.1/bin/'

¡Pero está allí en realidad!

Estoy desconcertado por estos errores. ¿Alguien puede ayudar por favor?

Por cierto, utilicé sudo en todos los comandos. Además, estoy en RHEL 5.5.

242voto

TilmanBaumann Puntos 1018

pg_config está en postgresql-devel (libpq-dev en Debian/Ubuntu, libpq-devel en Centos/Fedora/Cygwin/Babun.)

87voto

thegauraw Puntos 284

¿Has instalado python-dev? Si ya lo has hecho, intenta también instalar libpq-dev

sudo apt-get install libpq-dev python-dev

Del artículo: Cómo instalar psycopg2 en virtualenv

33voto

matiu Puntos 2168
apt-get build-dep python-psycopg2

20voto

Ali Raza Bhayani Puntos 395

Para resumir, también me encontré con exactamente el mismo problema. Después de leer muchos mensajes en stackoverflow y blogs en línea, la solución final que funcionó para mí es la siguiente:

  1. PostgreSQL (desarrollo o cualquier versión estable) debe estar instalado antes de instalar psycopg2.

  2. El archivo pg_config (este archivo normalmente se encuentra en la carpeta bin de la carpeta de instalación de PostgreSQL) debe configurarse explícitamente antes de instalar psycopg2. En mi caso, la ruta de instalación para PostgreSQL es:

    /opt/local/lib/postgresql91/

así que para configurar explícitamente la ruta del archivo pg_config, ingresé el siguiente comando en mi terminal:

PATH=$PATH:/opt/local/lib/postgresql91/bin/

Este comando asegura que cuando intentes instalar psycopg2 con pip, encontrará automáticamente la ruta de pg_config esta vez.

También he publicado un error completo con traza y su solución en mi blog al que puedes querer referir. Es para Mac OS X pero el problema de la ruta de pg_config es genérico y aplicable a Linux también.

9voto

Beelzebub Puntos 104

ACTUALIZAR / etc/yum.repos.d/CentOS-Base.repo, secciones [base] y [updates]
AGREGAR exclude=postgresql*

curl -O http://yum.postgresql.org/9.1/redhat/rhel-6-i386/pgdg-centos91-9.1-4.noarch.rpmr  
rpm -ivh pgdg-centos91-9.1-4.noarch.rpm

yum install postgresql  
yum install postgresql-devel

PATH=$PATH:/usr/pgsql-9.1/bin/

pip install psycopg2

Iteramos.com

Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X