Instalar PG gem en OS X – falla al construir extensión nativa

Parece que muchos otros han tenido problemas para instalar la gem de pg. Ninguna de las soluciones planteadas para otros me ha funcionado.

He intentado instalar la gem pg y postgres.app. La gem de pg no se instalará. El primer error que obtengo es:

Se produjo un error al instalar pg (0.17.0) y Bundler no puede continuar. Asegúrese de que la gem install pg -v '0.17.0' tenga éxito antes de agrupar.

El consejo de instalación para apuntar mi instalación joya a la configuración para pg falla con el siguiente mensaje de error (que muchos otros en este foro han encontrado):

 Failed to build native extensions... Results logged to /Users/melanie/.rvm/gems/ruby-1.9.3-p448/gems/pg-0.17.0/ext/gem_make.out 

No sé cómo encontrar o acceder a este archivo de registro para buscar más pistas.

También recibo un mensaje de error (comando no encontrado) cuando bash usar el comando sudo apt-get install. He recorrido este foro durante las últimas 6 horas, probando cada consejo para que pg trabaje con mi proyecto de carriles.

No puedo encontrar consejos sobre cómo cambiar un camino, o específicamente, qué cambio se requiere. Mi which pg_config devuelve un origen de archivo. Lo he usado con un comando para instalar pg usando esa configuración. Falla.

Hay muchas personas que han tenido problemas con esto. Muchas respuestas sugieren homebrew. Tuve que eliminar eso porque arrojó otros problemas.

El mismo error para mí y no lo experimenté hasta que descargué OS X 10.9 (Mavericks). Suspiro, otro dolor de cabeza de actualización del sistema operativo.

Así es como lo arreglé (con homebrew):

  • Instale otra comstackción de Xcode Tools (al escribir la brew update en la terminal le pedirá que actualice las herramientas de comstackción de Xcode)
  • brew update
  • brew install postgresql

Después de esa gem install pg funcionó para mí.

Si está utilizando Ubuntu intente instalar el siguiente archivo lib

 sudo apt-get install libpq-dev 

y entonces

gem install pg

trabajó para mi.

Estoy usando OS X Mavericks (versión 10.9)

y cuando ejecuto lo anterior, recibí el siguiente mensaje: Si las comstackciones de PostgreSQL 9 están fallando y tiene instalada la versión 8.x.

Entonces ejecuto el siguiente comando:

 ARCHFLAGS="-arch x86_64" gem install pg 

y esto funcionó para mí, espero que esto ayude a alguien 🙂

Ok, también tuve este problema (psql es v 9.3.0 y ruby ​​es v 2.1.2) y la solución que funcionó para mí fue establecer primero las configuraciones de paquete:

 bundle config build.pg -- --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.3/bin/pg_config 

Esta respuesta finalmente me ayudó a resolverlo: https://stackoverflow.com/a/9235107/3546680

Intenté todo durante horas pero finalmente lo solucioné (estoy en OS X 10.9.4):

  1. Instalar herramientas de línea de comandos de Xcode (sitio de desarrolladores de Apple)
  2. brew desinstalación postgresql
  3. brew instalar postgresql
  4. ARCHFLAGS = “- arch x86_64” joya instalar pg

Del mismo modo, después de instalar la bundle update Mavericks, se generaba un error en la gem pg, que solo se utiliza en producción y no localmente.

Utilizo Brew para administrar mis paquetes y postgresql ya estaba instalado, pero aún estaba obteniendo el error ‘no pg_config’.

La solución consistía en brew uninstall postgresql , luego brew install postgresql . Después de lo cual, pude ejecutar correctamente la bundle update .

paso fácil

  1. brew install postgresql
  2. gem install pg -v 'your version'

Creo que la respuesta “correcta” sería primero configurar PATH correctamente para Postgres.app añadiendo lo siguiente a ~/.profile ( .zshrc o ~/.zprofile si usa ZSH):

 export PATH=$PATH:/Applications/Postgres.app/Contents/Versions/latest/bin 

A continuación, abra una nueva pestaña o ventana en el terminal e instale la gem de pg con:

 ARCHFLAGS="-arch x86_64" gem install pg 

Documentado aquí:

En OSX con Postgres instalado en / Aplicaciones, simplemente ejecuto el siguiente comando (cambie 0.20 y 9.4 según su versión)

 gem install pg -v '0.20' -- --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.4/bin/pg_config 

Deberías :

Construyendo extensiones nativas con: ‘–with-pg-config = / Applications / Postgres.app / Contents / Versions / 9.4 / bin / pg_config’ Esto podría tomar un tiempo … Instalado con éxito pg-0.20.

Pasé un día sobre esto y así es como lo solucioné:

Descubrí que el valor global de build.pg se estableció en: /opt/local/lib/postgresql91/bin/pg_config y que no era donde se instaló postgres.

Lo arreglé con la sustitución del valor de build.pg por: bundle config build.pg --with-pg-config=/usr/local/Cellar/postgresql/9.4.4/bin/pg_config que es donde está mi instalación postgresql.

Tratar:

 gem install pg -- --with-pg-config=`which pg_config` 

Resuelto Encontré falta de biblioteca para postgresql en el sistema. Solo dos pasos lo resolvieron:

1) brew install postgresql 2) joya instalar pg