ruby postgresql ubuntu pg ruby-1.9.3

ruby - gem install pg no se puede enlazar a libpq



postgresql ubuntu (3)

Mira el mkmf.log alrededor de la línea 39:

"gcc -o conftest -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/i686-linux -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/ruby/backward -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1 -I. -I/usr/local/rvm/usr/include -D_FILE_OFFSET_BITS=64 -I/usr/include/postgresql -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -fPIC conftest.c -L. -L/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -Wl,-R/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -L/usr/local/rvm/usr/lib -Wl,-R/usr/local/rvm/usr/lib -L. -rdynamic -Wl,-export-dynamic -L/usr/lib -Wl,-R -Wl,/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -L/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -lruby -lpq -lpthread -lrt -ldl -lcrypt -lm -lc" /usr/lib/libpq.so: undefined reference to `X509_STORE_set_flags@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `CRYPTO_set_locking_callback@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `ENGINE_init@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `ENGINE_free@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `ENGINE_load_private_key@OPENSSL_0.9.8'' ...

Huele como un OpenSSL perdido. Tampoco veo un -lssl en la lista de la biblioteca, pero los símbolos que faltan sugieren que debería estar allí.

Intente instalar las bibliotecas de OpenSSL (versión 0.9.8 por el aspecto de las cosas). Luego vea si pg_config --libs contiene -lssl o similar y vuelva a intentarlo. Si todo esto funciona, es posible que desee enviar un informe de error a las personas de Ubuntu para que puedan corregir las dependencias de libpq-dev.

Lo siento, no tengo un Ubuntu configurado en cualquier lugar accesible en el momento, así que hay algunas conjeturas pasando aquí.

Después de actualizar a Ruby 1.9.3 (de 1.9.2 usando el sistema RVM) en Ubuntu 10.04.3, eliminé todas mis gemas e intenté reinstalar pg (ala bundle install pg ).

Luego arrojó un error y me informó que debería mirar mkmf.log, los cuales están incluidos en esta esencia: https://gist.github.com/d05a81701d968895c730

libpq-dev, libpq5 y postgresql-client están todos instalados y funcionando correctamente. La gema apuntando a pg_config, y los directorios include y bin directamente no parecen cambiar nada.

He visto varias preguntas sobre mensajes de error similares en stackoverflow y en el resto de la web, pero todas parecen ser simples problemas de dependencia faltantes (la mayoría de ellas se resuelven instalando libpq-dev), así que estoy un poco de una pérdida

Varias otras propiedades que pueden ser útiles / relevantes:

  • ruby 1.9.3p0 (30/10/2011 revisión 33570) [i686-linux]
  • rvm 1.10.1 (sistema)
  • gema 1.8.15
  • psql (PostgreSQL) 8.4.9

Gracias por adelantado.

gem_make.out:

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension. /usr/local/rvm/rubies/ruby-1.9.3-p0/bin/ruby extconf.rb checking for pg_config... yes Using config values from /usr/bin/pg_config checking for libpq-fe.h... yes checking for libpq/libpq-fs.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.

ldd.stdout:

$ldd /usr/lib/libpq.so linux-gate.so.1 => (0xf57fe000) libssl.so.0.9.8 => /lib/i686/cmov/libssl.so.0.9.8 (0xb77f4000) libcrypto.so.0.9.8 => /lib/i686/cmov/libcrypto.so.0.9.8 (0xb76a2000) libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0xb75f1000) libcom_err.so.2 => /lib/libcom_err.so.2 (0xb75ec000) libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 (0xb75bd000) libcrypt.so.1 => /lib/tls/i686/cmov/libcrypt.so.1 (0xb758b000) libldap_r-2.4.so.2 => /usr/lib/libldap_r-2.4.so.2 (0xb7544000) libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb752b000) libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb73d0000) libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb73cc000) libz.so.1 => /lib/libz.so.1 (0xb73b7000) libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0xb7393000) libkrb5support.so.0 => /usr/lib/libkrb5support.so.0 (0xb738b000) libkeyutils.so.1 => /lib/libkeyutils.so.1 (0xb7386000) libresolv.so.2 => /lib/tls/i686/cmov/libresolv.so.2 (0xb7372000) /lib/ld-linux.so.2 (0xb786a000) liblber-2.4.so.2 => /usr/lib/liblber-2.4.so.2 (0xb7365000) libsasl2.so.2 => /usr/lib/libsasl2.so.2 (0xb734d000) libgnutls.so.26 => /usr/lib/libgnutls.so.26 (0xb72b2000) libtasn1.so.3 => /usr/lib/libtasn1.so.3 (0xb72a0000) libgcrypt.so.11 => /lib/libgcrypt.so.11 (0xb722d000) libgpg-error.so.0 => /lib/libgpg-error.so.0 (0xb7228000)

pgconfig.stdout:

$pg_config --ldflags --libs -Wl,-Bsymbolic-functions -Wl,--as-needed -Wl,--as-needed -lpgport -lxslt -lxml2 -lpam -lssl -lcrypto -lkrb5 -lcom_err -lgssapi_krb5 -lz -lreadline -lcrypt -ldl -lm

mkmf.log:

find_executable: checking for pg_config... -------------------- yes -------------------- find_header: checking for libpq-fe.h... -------------------- yes "gcc -o conftest -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/i686-linux -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/ruby/backward -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1 -I. -I/usr/local/rvm/usr/include -D_FILE_OFFSET_BITS=64 -I/usr/include/postgresql -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -fPIC conftest.c -L. -L/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -Wl,-R/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -L/usr/local/rvm/usr/lib -Wl,-R/usr/local/rvm/usr/lib -L. -rdynamic -Wl,-export-dynamic -L/usr/lib -Wl,-R -Wl,/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -L/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -lruby -lpthread -lrt -ldl -lcrypt -lm -lc" checked program was: /* begin */ 1: #include "ruby.h" 2: 3: int main() {return 0;} /* end */ "gcc -E -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/i686-linux -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/ruby/backward -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1 -I. -I/usr/local/rvm/usr/include -D_FILE_OFFSET_BITS=64 -I/usr/include/postgresql -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -fPIC conftest.c -o conftest.i" checked program was: /* begin */ 1: #include "ruby.h" 2: 3: #include <libpq-fe.h> /* end */ -------------------- find_header: checking for libpq/libpq-fs.h... -------------------- yes "gcc -E -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/i686-linux -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/ruby/backward -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1 -I. -I/usr/local/rvm/usr/include -D_FILE_OFFSET_BITS=64 -I/usr/include/postgresql -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -fPIC conftest.c -o conftest.i" checked program was: /* begin */ 1: #include "ruby.h" 2: 3: #include <libpq/libpq-fs.h> /* end */ -------------------- have_library: checking for PQconnectdb() in -lpq... -------------------- no "gcc -o conftest -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/i686-linux -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/ruby/backward -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1 -I. -I/usr/local/rvm/usr/include -D_FILE_OFFSET_BITS=64 -I/usr/include/postgresql -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -fPIC conftest.c -L. -L/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -Wl,-R/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -L/usr/local/rvm/usr/lib -Wl,-R/usr/local/rvm/usr/lib -L. -rdynamic -Wl,-export-dynamic -L/usr/lib -Wl,-R -Wl,/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -L/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -lruby -lpq -lpthread -lrt -ldl -lcrypt -lm -lc" /usr/lib/libpq.so: undefined reference to `X509_STORE_set_flags@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `CRYPTO_set_locking_callback@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `ENGINE_init@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `ENGINE_free@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `ENGINE_load_private_key@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `ENGINE_finish@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `X509_check_private_key@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `X509_free@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `SSL_CTX_new@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `SSL_pending@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `TLSv1_method@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `X509_STORE_load_locations@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `SSL_CTX_set_verify@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `ERR_pop_to_mark@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `SSL_new@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `SSL_get_error@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `ERR_get_error@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `ENGINE_by_id@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `SSL_write@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `SSL_load_error_strings@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `SSL_CTX_load_verify_locations@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `BIO_ctrl@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `PEM_read_bio_PrivateKey@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `CRYPTO_set_id_callback@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `SSL_free@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `BIO_free@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `SSL_CTX_get_cert_store@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `X509_get_subject_name@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `SSL_shutdown@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `SSL_CTX_set_client_cert_cb@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `PEM_read_bio_X509@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `ERR_set_mark@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `OPENSSL_config@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `X509_NAME_get_text_by_NID@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `SSL_read@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `SSL_CTX_ctrl@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `ERR_reason_error_string@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `SSL_get_peer_certificate@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `X509_NAME_oneline@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `SSL_set_ex_data@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `SSL_set_fd@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `SSL_library_init@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `CRYPTO_num_locks@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `SSL_get_ex_data@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `SSL_connect@OPENSSL_0.9.8'' /usr/lib/libpq.so: undefined reference to `BIO_new_file@OPENSSL_0.9.8'' collect2: ld returned 1 exit status checked program was: /* begin */ 1: #include "ruby.h" 2: 3: #include <libpq-fe.h> 4: 5: /*top*/ 6: int main() {return 0;} 7: int t() { void ((*volatile p)()); p = (void ((*)()))PQconnectdb; return 0; } /* end */ "gcc -o conftest -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/i686-linux -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/ruby/backward -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1 -I. -I/usr/local/rvm/usr/include -D_FILE_OFFSET_BITS=64 -I/usr/include/postgresql -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -fPIC conftest.c -L. -L/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -Wl,-R/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -L/usr/local/rvm/usr/lib -Wl,-R/usr/local/rvm/usr/lib -L. -rdynamic -Wl,-export-dynamic -L/usr/lib -Wl,-R -Wl,/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -L/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -lruby -lpq -lpthread -lrt -ldl -lcrypt -lm -lc" conftest.c: In function ''t'': conftest.c:7: error: too few arguments to function ''PQconnectdb'' checked program was: /* begin */ 1: #include "ruby.h" 2: 3: #include <libpq-fe.h> 4: 5: /*top*/ 6: int main() {return 0;} 7: int t() { PQconnectdb(); return 0; } /* end */ -------------------- have_library: checking for PQconnectdb() in -llibpq... -------------------- no "gcc -o conftest -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/i686-linux -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/ruby/backward -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1 -I. -I/usr/local/rvm/usr/include -D_FILE_OFFSET_BITS=64 -I/usr/include/postgresql -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -fPIC conftest.c -L. -L/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -Wl,-R/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -L/usr/local/rvm/usr/lib -Wl,-R/usr/local/rvm/usr/lib -L. -rdynamic -Wl,-export-dynamic -L/usr/lib -Wl,-R -Wl,/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -L/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -lruby -llibpq -lpthread -lrt -ldl -lcrypt -lm -lc" /usr/bin/ld: cannot find -llibpq collect2: ld returned 1 exit status checked program was: /* begin */ 1: #include "ruby.h" 2: 3: #include <libpq-fe.h> 4: 5: /*top*/ 6: int main() {return 0;} 7: int t() { void ((*volatile p)()); p = (void ((*)()))PQconnectdb; return 0; } /* end */ "gcc -o conftest -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/i686-linux -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/ruby/backward -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1 -I. -I/usr/local/rvm/usr/include -D_FILE_OFFSET_BITS=64 -I/usr/include/postgresql -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -fPIC conftest.c -L. -L/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -Wl,-R/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -L/usr/local/rvm/usr/lib -Wl,-R/usr/local/rvm/usr/lib -L. -rdynamic -Wl,-export-dynamic -L/usr/lib -Wl,-R -Wl,/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -L/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -lruby -llibpq -lpthread -lrt -ldl -lcrypt -lm -lc" conftest.c: In function ''t'': conftest.c:7: error: too few arguments to function ''PQconnectdb'' checked program was: /* begin */ 1: #include "ruby.h" 2: 3: #include <libpq-fe.h> 4: 5: /*top*/ 6: int main() {return 0;} 7: int t() { PQconnectdb(); return 0; } /* end */ -------------------- have_library: checking for PQconnectdb() in -lms/libpq... -------------------- no "gcc -o conftest -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/i686-linux -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/ruby/backward -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1 -I. -I/usr/local/rvm/usr/include -D_FILE_OFFSET_BITS=64 -I/usr/include/postgresql -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -fPIC conftest.c -L. -L/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -Wl,-R/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -L/usr/local/rvm/usr/lib -Wl,-R/usr/local/rvm/usr/lib -L. -rdynamic -Wl,-export-dynamic -L/usr/lib -Wl,-R -Wl,/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -L/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -lruby -lms/libpq -lpthread -lrt -ldl -lcrypt -lm -lc" /usr/bin/ld: cannot find -lms/libpq collect2: ld returned 1 exit status checked program was: /* begin */ 1: #include "ruby.h" 2: 3: #include <libpq-fe.h> 4: 5: /*top*/ 6: int main() {return 0;} 7: int t() { void ((*volatile p)()); p = (void ((*)()))PQconnectdb; return 0; } /* end */ "gcc -o conftest -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/i686-linux -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/ruby/backward -I/usr/local/rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1 -I. -I/usr/local/rvm/usr/include -D_FILE_OFFSET_BITS=64 -I/usr/include/postgresql -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -fPIC conftest.c -L. -L/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -Wl,-R/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -L/usr/local/rvm/usr/lib -Wl,-R/usr/local/rvm/usr/lib -L. -rdynamic -Wl,-export-dynamic -L/usr/lib -Wl,-R -Wl,/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -L/usr/local/rvm/rubies/ruby-1.9.3-p0/lib -lruby -lms/libpq -lpthread -lrt -ldl -lcrypt -lm -lc" conftest.c: In function ''t'': conftest.c:7: error: too few arguments to function ''PQconnectdb'' checked program was: /* begin */ 1: #include "ruby.h" 2: 3: #include <libpq-fe.h> 4: 5: /*top*/ 6: int main() {return 0;} 7: int t() { PQconnectdb(); return 0; } /* end */ --------------------


No se deje engañar por la lib de SSL que se está instalando, eche un vistazo a su compilación de Ruby y verifique el registro de compilación de SSL allí. He sido mordido por ese antes. Otras bibliotecas que a veces no se cargan son las de GZip. Este puede no ser el problema, pero echa un vistazo.

ACTUALIZAR:

Necesitas las bibliotecas -dev.

Estos días uso rbenv o alguna de las otras herramientas de construcción de ruby ​​y sigo los mensajes que escupieron.


Tengo el mismo problema en mi caso fue lib .rvm / usr / lib que fue llevado a esta compilación en lugar de lib del sistema. No estoy seguro de por qué sucede eso y por qué no funciona (en mi caso en Ubuntu 10.04 x86_64), pero para resolverlo simplemente:

mv ~/.rvm/usr/lib ~/.rvm/usr/lib_rvm

por un tiempo o para siempre;)

Si alguien va a investigar por qué sucede, se lo agradeceré. Saludos.