ruby-on-rails - rails - ruby macos sierra
Instalar PG gem en OS X-falla al construir extensión nativa (12)
Parece que muchos otros han tenido problemas para instalar la gema de pg. Ninguna de las soluciones planteadas para otros me ha funcionado.
He intentado instalar la gema pg y postgres.app. La gema 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 intento 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.
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 gema de pg
con:
ARCHFLAGS="-arch x86_64" gem install pg
Documentado aquí:
Del mismo modo, después de instalar la bundle update
Mavericks, se generaba un error en la gema 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
.
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 compilación de Xcode Tools (al escribir la
brew update
en la terminal le pedirá que actualice las herramientas de compilación de Xcode) -
brew update
-
brew install postgresql
Después de esa gem install pg
funcionó para mí.
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.
Estoy usando OS X Mavericks (versión 10.9)
y cuando ejecuto lo anterior, recibí el siguiente mensaje: Si las compilaciones 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 :)
Intenté todo durante horas pero finalmente lo solucioné (estoy en OS X 10.9.4):
- Instalar herramientas de línea de comandos de Xcode (sitio de desarrolladores de Apple)
- brew desinstalación postgresql
- brew instalar postgresql
- ARCHFLAGS = "- arch x86_64" joya instalar pg
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://.com/a/9235107/3546680
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.
Resuelto Encontré falta de biblioteca para postgresql en el sistema. Solo dos pasos lo resolvieron:
1) brew install postgresql 2) joya instalar pg
Si está utilizando Ubuntu intente instalar el siguiente archivo lib
sudo apt-get install libpq-dev
y entonces
gem install pg
trabajó para mi.
Tratar:
gem install pg -- --with-pg-config=`which pg_config`
paso fácil
-
brew install postgresql
-
gem install pg -v ''your version''