update sierra rails mac instalar high ruby-on-rails ruby ruby-on-rails-4 pg osx-mavericks

ruby on rails - sierra - ERROR: no se pudo construir la extensión nativa de la gema en Mavericks



install rvm mac brew (11)

Estoy intentando ejecutar el bundle en mi proyecto Rails en OSX 10.9. Falla al llegar a la gema pg con este error:

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension. /Users/kyledecot/.rvm/rubies/ruby-2.0.0-p247/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... yes checking for libpq/libpq-fs.h... yes checking for pg_config_manual.h... yes checking for PQconnectdb() in -lpq... yes checking for PQconnectionUsedPassword()... yes checking for PQisthreadsafe()... yes checking for PQprepare()... yes checking for PQexecParams()... yes checking for PQescapeString()... yes checking for PQescapeStringConn()... yes checking for PQescapeLiteral()... yes checking for PQescapeIdentifier()... yes checking for PQgetCancel()... yes checking for lo_create()... yes checking for pg_encoding_to_char()... yes checking for pg_char_to_encoding()... yes checking for PQsetClientEncoding()... yes checking for PQlibVersion()... yes checking for PQping()... yes checking for PQsetSingleRowMode()... yes checking for rb_encdb_alias()... yes checking for rb_enc_alias()... no checking for rb_thread_call_without_gvl()... yes checking for rb_thread_call_with_gvl()... yes checking for rb_thread_fd_select()... yes checking for rb_w32_wrap_io_handle()... no checking for PGRES_COPY_BOTH in libpq-fe.h... no checking for PGRES_SINGLE_TUPLE in libpq-fe.h... no checking for PG_DIAG_TABLE_NAME in libpq-fe.h... no checking for struct pgNotify.extra in libpq-fe.h... yes checking for unistd.h... yes checking for ruby/st.h... yes creating extconf.h creating Makefile make "DESTDIR=" compiling gvl_wrappers.c clang: warning: argument unused during compilation: ''-fno-fast-math'' compiling pg.c clang: warning: argument unused during compilation: ''-fno-fast-math'' pg.c:272:9: warning: implicit declaration of function ''PQlibVersion'' is invalid in C99 [-Wimplicit-function-declaration] return INT2NUM(PQlibVersion()); ^ In file included from pg.c:48: In file included from ./pg.h:17: In file included from /Users/kyledecot/.rvm/rubies/ruby-2.0.0-p247/include/ruby-2.0.0/ruby.h:33: /Users/kyledecot/.rvm/rubies/ruby-2.0.0-p247/include/ruby-2.0.0/ruby/ruby.h:1167:21: note: instantiated from: # define INT2NUM(v) INT2FIX((int)(v)) ^ pg.c:272:9: note: instantiated from: return INT2NUM(PQlibVersion()); ^ pg.c:272:17: note: instantiated from: return INT2NUM(PQlibVersion()); ^ pg.c:375:48: error: use of undeclared identifier ''PQPING_OK'' rb_define_const(rb_mPGconstants, "PQPING_OK", INT2FIX(PQPING_OK)); ^ pg.c:375:56: note: instantiated from: rb_define_const(rb_mPGconstants, "PQPING_OK", INT2FIX(PQPING_OK)); ^ pg.c:377:52: error: use of undeclared identifier ''PQPING_REJECT'' rb_define_const(rb_mPGconstants, "PQPING_REJECT", INT2FIX(PQPING_REJECT)); ^ pg.c:377:60: note: instantiated from: rb_define_const(rb_mPGconstants, "PQPING_REJECT", INT2FIX(PQPING_REJECT)); ^ pg.c:379:57: error: use of undeclared identifier ''PQPING_NO_RESPONSE'' rb_define_const(rb_mPGconstants, "PQPING_NO_RESPONSE", INT2FIX(PQPING_NO_RESPONSE)); ^ pg.c:379:65: note: instantiated from: rb_define_const(rb_mPGconstants, "PQPING_NO_RESPONSE", INT2FIX(PQPING_NO_RESPONSE)); ^ pg.c:381:56: error: use of undeclared identifier ''PQPING_NO_ATTEMPT'' rb_define_const(rb_mPGconstants, "PQPING_NO_ATTEMPT", INT2FIX(PQPING_NO_ATTEMPT)); ^ pg.c:381:64: note: instantiated from: rb_define_const(rb_mPGconstants, "PQPING_NO_ATTEMPT", INT2FIX(PQPING_NO_ATTEMPT)); ^ 1 warning and 4 errors generated. make: *** [pg.o] Error 1 Gem files will remain installed in /Users/kyledecot/.rvm/gems/ruby-2.0.0-p247@skateboxes/gems/pg-0.17.0 for inspection. Results logged to /Users/kyledecot/.rvm/gems/ruby-2.0.0-p247@skateboxes/gems/pg-0.17.0/ext/gem_make.out An error occurred while installing pg (0.17.0), and Bundler cannot continue. Make sure that `gem install pg -v ''0.17.0''` succeeds before bundling.


Cuando intento instalar

apt-get install libpq-dev

Error al instalar, problema de dependencias no satisfechas, para resolver

apt-get remove libpq5

luego instala

apt-get install libpq-dev

Finalmente resolvió el problema de la gema pg.


Esto funcionó para mí en Mac OS X 10.9.3 y Postgres.app versión 9.3.4.2:

1) Instalar Postgres.app

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

3) gem install pg -v ''0.17.1''

4) bundle install


Intenta usar el argumento --with-pg-config :

bundle config build.pg --with-pg-config=/usr/pgsql-9.1/bin/pg_config

Para mostrar la ruta del pg_config :

which pg_config

Para usuarios de Ubuntu:

sudo apt-get install postgresql sudo apt-get install libpq-dev

Entonces:

bundle install


Lo acabo de ejecutar haciendo

ARCHFLAGS="-arch x86_64" gem install pg

después de instalar posgres usando brebaje


Lo siguiente funcionó para mí:

gem install pg -v ''0.18.1'' - --with-pg config = / Biblioteca / PostgreSQL / 9.3 / bin / pg_config


Para mí funcionó cuando lo hice:

brew install postgresql


Para mí, usando Mavericks, Rails 3.2.13, Ruby 2.0.0-p247, PostgreSQL 9.1, necesitaba todo esto:

gem install pg -v ''0.15.1'' -- --with-pg-config=/Library/PostgreSQL/9.1/bin/pg_config


También asegúrese de haber actualizado Xcode para volver a instalar las herramientas de línea de comandos en Mavericks. En tipo de terminal:

xcode-select --install

Luego sigue las instrucciones.


Tienes que configurar pg con tu versión actual. Usé la versión mine 9.4 en Yosemite. Aquí está el siguiente comando

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

Debes usar tu propia versión

bundle config build.pg --with-pg-config=/Applications/Postgres.app/Contents/Versions/(YOUR POSTGRES VERSION)/bin/pg_config

entonces hazlo

bundle install


esto funcionó para mí con Mavericks y Postgresapp:

gem install pg -v ''0.17.0'' -- --with-pg-config=/Applications/Postgres93.app/Contents/MacOS/bin/pg_config


An error occurred while installing debugger (1.6.5), and Bundler cannot continue. Make sure that `gem install debugger -v ''1.6.5''` succeeds before bundling.

Pude solucionar este error volviendo a Ruby v2.0.0. Estaba ejecutando Ruby 2.1.1, que no es compatible con esta versión del depurador. Asegúrate de revisar tu versión de ruby ​​si te encuentras con este problema también.