ruby - procedimientos - fallo del paquete: no se puede encontrar la biblioteca del cliente PostgreSQL(libpq)
plpgsql tutorial español (9)
Asegúrese de que tiene el paquete ''libpq-dev'' instalado en su sistema
Así que intenta instalar libpq-dev:
for Ubuntu systems: sudo apt-get install libpq-dev
on RHEL systems: yum install postgresql-devel
for Mac: brew install postgresql
Luego instala pg gema
$ gem install pg -v ''0.17.1''
$ bundle
Esta pregunta ya tiene una respuesta aquí:
Creo que he intentado todas las sugerencias que he podido encontrar con respecto a este problema. Todavía no estoy trabajando para mí.
Cuando intento empaquetar ...
$ bundle
...
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby extconf.rb
checking for pg_config... yes
Using config values from /usr/local/bin/pg_config
checking for libpq-fe.h... yes
checking for libpq/libpq-fs.h... yes
checking for pg_config_manual.h... yes
checking for PQconnectdb() in -lpq... no
checking for PQconnectdb() in -llibpq... no
checking for PQconnectdb() in -lms/libpq... no
Can''t find the PostgreSQL client library (libpq)
*** 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=/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby
--with-pg
--without-pg
--with-pg-config
--without-pg-config
--with-pg_config
--without-pg_config
--with-pg-dir
--without-pg-dir
--with-pg-include
--without-pg-include=${pg-dir}/include
--with-pg-lib
--without-pg-lib=${pg-dir}/
--with-pqlib
--without-pqlib
--with-libpqlib
--without-libpqlib
--with-ms/libpqlib
--without-ms/libpqlib
Gem files will remain installed in
...
An error occurred while installing pg (0.17.1), and Bundler cannot
continue.
Make sure that `gem install pg -v ''0.17.1''` succeeds before
bundling.
Salida del código anterior ...
$ which bundle
/Users/Loren/.rvm/gems/ruby-2.1.1@global/bin/bundle
$ which gem
/Users/Loren/.rvm/rubies/ruby-2.1.1/bin/gem
$ which psql
/usr/local/bin/psql
Intenté desinstalar postgresql usando Homebrew y reinstalarlo, y eso no ayudó.
Lo intenté...
ARCHFLAGS="-arch x86_64" gem install pg
y eso se completa con éxito, pero luego, cuando ejecuto un bundle
, sigo recibiendo el mismo error.
Lo intenté ...
gem install pg -- --with-pg-config=/Applications/Postgres93.app/Contents/MacOS/bin/pg_config
Y eso no funcionó.
Lo intenté ...
gem install pg -v ''0.17.1'' -- --with-pg-config=/usr/local/Cellar/postgresql/9.3.2/bin/pg_config
y eso tampoco funcionó.
No estoy seguro de qué más probar en este punto. Gracias por cualquier ayuda.
Basado en la respuesta de este post y funcionó para mí (Yosemite OSX 10.10), puedes probar lo siguiente:
$ sudo su
$ env ARCHFLAGS="-arch x86_64" gem install pg
No tienes que reinstalar pg desde homebrew.
Desinstalé postgresql usando home-brew (lo había usado antes para instalar postgresql)
Instalé el Postgres.app y esto actualizó mi PATH
Luego tuve que detener el db postgresql actualmente en ejecución
Entonces pude iniciar Postgres.app y comenzó en el puerto 5432
Entonces tuve que reiniciar mi terminal
Entonces pude ejecutar bundle y funcionó.
En mi caso particular, estaba tratando de ejecutar bundle install
en mi primera aplicación heroku. Hice todos los elementos que @boobooninja enumeró (con caminos ligeramente diferentes, por supuesto). Lo que terminó trabajando para mí fue una combinación de dos respuestas. Lo necesitaba
$ sudo su
$ env ARCHFLAGS="-arch x86_64" gem install pg -v ''0.17.1''
Agregando el -v 0.17.1
y especificando la versión que necesita heroku, pude completar mi paquete y continuar.
Mi solución terminó en esto
ARCHFLAGS="-arch x86_64" bundle install
Para facilitar la administración y la actualización, etc. He utilizado la ( Aplicación PostgreSQL en mi Mac con la siguiente instalación de gemas (igual que la suya anterior).
gem install pg -- --with-pg-config=/Applications/Postgres__version__.app/Contents/MacOS/bin/pg_config
No he tenido problemas con este enfoque (en comparación con una instalación personalizada o mediante Homebrew, desde el cual he tenido algunos problemas).
Para mí, el truco fue volver a vincular Postgres 9.3.0
brew link postgresql
Si aún quieres poder agregar gem ''pg''
a tu gemfile y usar bundle install
, y sabes que PostgreSQL y libpq-dev están instalados (lo cual creo que ambos deberían estar ya que OS X se envía con PostgreSQL), solo tienes que decírselo. $PATH
donde encontrar pg_config
. Prueba esto:
$ ln -s /Library/PostgreSQL/9.1/bin/pg_config /usr/local/bin/pg_config
Asegúrese de reemplazar 9.1
con cualquier versión de PostgreSQL que haya instalado. Y asegúrese de que dondequiera que esté creando el enlace esté en su $PATH
. Una vez hecho esto, ejecute bundle install
para instalar la gema pg
.
sudo ARCHFLAGS="-arch x86_64" gem install pg
HIZO EL TRUCO PARA MÍ ... gracias por la sugerencia en un hilo dado por Jakob @ github
Mi sistema: OSX 10.9.4, Ruby 2.0.0, local (no homebrew) Postgresql 9.3.5
Building native extensions. This could take a while...
Successfully installed pg-0.17.1
invalid options: -f fivefish
(invalid options are ignored)
Parsing documentation for pg-0.17.1
unable to convert "/xCF" from ASCII-8BIT to UTF-8 for lib/pg_ext.bundle, skipping
Installing ri documentation for pg-0.17.1
1 gem installed