Cuando intento ejecutar el paquete (instalación del paquete), todo el tiempo obtengo
Installing pg (0.13.2) with native extensions
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/Users/ryan/.rvm/rubies/ruby-1.9.2-p290/bin/ruby extconf.rb
checking for pg_config... no
No pg_config... trying anyway. If building fails, please try again with
--with-pg-config=/path/to/pg_config
checking for libpq-fe.h... no
Can't find the 'libpq-fe.h header
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers. Check the mkmf.log file for more
details. You may need configuration options.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/Users/ryan/.rvm/rubies/ruby-1.9.2-p290/bin/ruby
--with-pg
--without-pg
--with-pg-dir
--without-pg-dir
--with-pg-include
--without-pg-include=${pg-dir}/include
--with-pg-lib
--without-pg-lib=${pg-dir}/lib
--with-pg-config
--without-pg-config
--with-pg_config
--without-pg_config
Gem files will remain installed in /Users/ryan/.rvm/gems/ruby-1.9.2-p290/gems/pg-0.13.2 for inspection.
Results logged to /Users/ryan/.rvm/gems/ruby-1.9.2-p290/gems/pg-0.13.2/ext/gem_make.out
An error occured while installing pg (0.13.2), and Bundler cannot continue.
Make sure that `gem install pg -v '0.13.2'` succeeds before bundling.
Yo uso Mac OS X 10.6, la versión de PostgreSQL instalada es 9.1. Encontré que el problema está en libpq-dev , ¿cómo puedo instalarlo / solucionarlo?
ruby-on-rails
macos
postgresql-9.1
pg
libpq
usuario984621
fuente
fuente
sudo port install libpq-dev
, pero otro problema -Error: Port libpq-dev not found To report a bug, see <http://guide.macports.org/#project.tickets>
. Eso es terrible, todavía hay algunos problemas ...Respuestas:
Como se indica en su registro de errores, debe pasar la ruta al archivo pg_config. Intenta instalar la gema usando:
Si no está seguro de dónde está su pg_config, y asumiendo que está en Linux o Mac, puede ejecutar el siguiente comando:
Su pg-config puede estar en diferentes ubicaciones dependiendo de cómo instaló postgres.
fuente
pg_config
programa.pg_config
(por ejemplo, al/Library/PostgreSQL/9.1/bin/pg_config
de 9.1.x) y las cabeceras de desarrollo. Es lo que uso para probar lapg
gema en desarrollo.which pg_config
sería más rápido quefind / -name pg_config
?brew install libpqxx
y todo irá bien.si está ejecutando Linux, puede estar interesado en lo que funcionó para mí:
Luego
luego
src: http://wikimatze.de/installing-postgresql-gem-under-ubuntu-and-mac
fuente
Si está utilizando Postgress.app , querrá acceder a sus herramientas de línea de comandos . Ingrese la siguiente línea en su terminal o su perfil PATH :
gem install pg
ahora debería funcionar. (Esto es lo que funcionó para mí).Nota La ruta de las nuevas versiones se ve así:
fuente
/Applications/Postgres.app/Contents/Versions/9.3/bin
partir de 9.3.5 si está utilizando Postgres.appSi tiene homebrew, simplemente escriba:
Si no lo tienes, descárgalo escribiendo esto en tu terminal:
fuente
Buscar libpq:
Debería salir
libpqxx
Luego intente instalarlo:
fuente
Solo necesitas instalar
libpq-dev
:Entonces la gema debería instalarse bien.
fuente
Siga las instrucciones posteriores a la instalación: http://postgresapp.com/documentation/configuration-ruby.html
Para instalar la gema pg, asegúrese de haber configurado su $ PATH correctamente (como se especifica en http://postgresapp.com/documentation/cli-tools.html ), luego ejecute
sudo ARCHFLAGS="-arch x86_64" gem install pg
Recomiendo encarecidamente leer ambas páginas. Solo los hojeé y perdí 1 hora de mi vida. Léelos, problema resuelto.
fuente
El problema que tuve fue que, por alguna razón, estaba intentando compilar con /usr/bin/gcc-4.2. Lo descubrí cambiando try_cpp en mkmf.rb (que vi en el seguimiento de la pila) para generar una excepción con la línea de compilación que fallaba.
Hice un enlace suave de gcc a gcc-4.2 y funcionó:
¿Por qué estaba intentando usar gcc-4.2? Ni idea.
La línea de compilación real:
fuente
Tengo el mismo problema pero mi Postgres se instaló en
/Library/PostgreSQL/9.3
Se actualizó ~ / .bash_profile agregando:
Abra una nueva terminal, ejecútela
bundle update
y también me funcionó. Gracias Ari.fuente
Puede establecer una opción de configuración de compilación
bundle config build.pg --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.3/bin/pg_config
y usarlagem install pg
sin ninguna opción (la ruta a pg_config puede ser diferente para usted, esta es para Postgresapp 9.3.5.0)fuente
Tuve el mismo problema en mi máquina openSUSE13.1 KDE. Antes de ese tema me encontré con que había instalado sólo los paquetes
postgresql
ypostgresql-server
el usozypper
de comandos. Luego instalé nuevamente 2 paquetes más:Entonces, corrí de nuevo
bundle install
y ¡¡¡éxito !!!fuente
Para obtener una solución OSX que funcione, consulte esta guía http://krugerdavid.com/journal/how-to-install-xcode-homebrew-git-rvm-postgresql-ruby-1-9-3-on-snow-leopard/
Lo guiará a través de la instalación de PostgreSQL usando homebrew. Probado y funcionando para mí en OSX 10.8.3, PostgreSQL 9.2.3 y Ruby 2.0.0-p0
fuente
Primero, desinstale cualquier versión de Homebrew. La opción --force hace que desinstale todas las versiones.
Cambie las rutas en consecuencia para su versión.
Edite / etc / profile y elimine cualquier línea que haga referencia a "postgres".
Instalar PostgresSQL
Instalar de PG GEM
Eso es. Saludos.
fuente
Primero puede verificar si tiene un archivo postrgresql en su terminal yendo al archivo lib. yendo cd ~ / opt / local / lib / y luego escriba ls y el botón enter. Esto le mostrará una lista de todos los archivos que se encuentran en el directorio lib.
1.Si no tiene postreseql, puede descargarlo a través de macports. sudo puerto instalar postgresql93 @ 9.3.2_1
Ahora cd de nuevo en la carpeta que está intentando agrupar la instalación
ahora ejecuta la instalación del paquete
fuente
En Fedora:
fuente
Lo que funcionó para mí en El Capitán fue actualizar ruby del sistema predeterminado a 2.3.1 parecía encontrar las bibliotecas correctas que
pg
necesitaba la gema.fuente