Rails pg gem Incompatible version de bibliothèque

Je me fais de la suite de "incompatible version de bibliothèque' erreur lorsque j'essaie d'accéder et de Ruby on Rails site web, le mode de développement.

incompatible library version - /var/www/vhosts/launch.site.com/httpdocs/vendor/bundle/ruby/2.2.0/gems/pg-0.18.4/lib/pg_ext.so (LoadError)
/var/www/vhosts/launch.site.com/httpdocs/vendor/bundle/ruby/2.2.0/gems/pg-0.18.4/lib/pg.rb:4:in `require'
/var/www/vhosts/launch.site.com/httpdocs/vendor/bundle/ruby/2.2.0/gems/pg-0.18.4/lib/pg.rb:4:in `<top (required)>'
/usr/local/rvm/gems/ruby-2.2.3/gems/bundler-1.10.6/lib/bundler/runtime.rb:76:in `require'
/usr/local/rvm/gems/ruby-2.2.3/gems/bundler-1.10.6/lib/bundler/runtime.rb:76:in `block (2 levels) in require'
/usr/local/rvm/gems/ruby-2.2.3/gems/bundler-1.10.6/lib/bundler/runtime.rb:72:in `each'
/usr/local/rvm/gems/ruby-2.2.3/gems/bundler-1.10.6/lib/bundler/runtime.rb:72:in `block in require'
/usr/local/rvm/gems/ruby-2.2.3/gems/bundler-1.10.6/lib/bundler/runtime.rb:61:in `each'
/usr/local/rvm/gems/ruby-2.2.3/gems/bundler-1.10.6/lib/bundler/runtime.rb:61:in `require'
/usr/local/rvm/gems/ruby-2.2.3/gems/bundler-1.10.6/lib/bundler.rb:134:in `require'
/var/www/vhosts/launch.site.com/httpdocs/config/application.rb:7:in `<top (required)>'
/var/www/vhosts/launch.site.com/httpdocs/config/environment.rb:2:in `require'
/var/www/vhosts/launch.site.com/httpdocs/config/environment.rb:2:in `<top (required)>'
config.ru:3:in `require'
config.ru:3:in `block in <main>'
/var/www/vhosts/launch.site.com/httpdocs/vendor/bundle/ruby/2.2.0/gems/rack-1.6.4/lib/rack/builder.rb:55:in `instance_eval'
/var/www/vhosts/launch.site.com/httpdocs/vendor/bundle/ruby/2.2.0/gems/rack-1.6.4/lib/rack/builder.rb:55:in `initialize'
config.ru:1:in `new'
config.ru:1:in `<main>'
/usr/share/passenger/helper-scripts/rack-preloader.rb:110:in `eval'
/usr/share/passenger/helper-scripts/rack-preloader.rb:110:in `preload_app'
/usr/share/passenger/helper-scripts/rack-preloader.rb:156:in `<module:App>'
/usr/share/passenger/helper-scripts/rack-preloader.rb:30:in `<module:PhusionPassenger>'
/usr/share/passenger/helper-scripts/rack-preloader.rb:29:in `<main>'

J'ai regardé ce que les bibliothèques pg_ext.so tente d'accéder et d'utiliser ldd et voici le résultat:

$ ldd pg-0.18.4/lib/pg_ext.so
linux-vdso.so.1 =>  (0x00007ffc14a7c000)
libruby.so.1.8 => /usr/lib64/libruby.so.1.8 (0x00007fe98291a000)
libpq.so.5 => /usr/lib64/libpq.so.5 (0x00007fe9826f1000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fe9824cb000)
librt.so.1 => /lib64/librt.so.1 (0x00007fe9822c3000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fe9820be000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007fe981e87000)
libm.so.6 => /lib64/libm.so.6 (0x00007fe981c03000)
libc.so.6 => /lib64/libc.so.6 (0x00007fe98186e000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fe981658000)
libssl.so.10 => /usr/lib64/libssl.so.10 (0x00007fe9813ec000)
libcrypto.so.10 => /usr/lib64/libcrypto.so.10 (0x00007fe981008000)
libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00007fe980dc4000)
libldap_r-2.4.so.2 => /usr/lib64/libldap_r-2.4.so.2 (0x00007fe980b6c000)
/lib64/ld-linux-x86-64.so.2 (0x00007fe982e47000)
libfreebl3.so => /usr/lib64/libfreebl3.so (0x00007fe980968000)
libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00007fe980681000)
libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007fe98047d000)
libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00007fe980250000)
libz.so.1 => /lib64/libz.so.1 (0x00007fe98003a000)
libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007fe97fe2f000)
libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007fe97fc2b000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007fe97fa11000)
liblber-2.4.so.2 => /usr/lib64/liblber-2.4.so.2 (0x00007fe97f802000)
libsasl2.so.2 => /usr/lib64/libsasl2.so.2 (0x00007fe97f5e7000)
libssl3.so => /usr/lib64/libssl3.so (0x00007fe97f3a7000)
libsmime3.so => /usr/lib64/libsmime3.so (0x00007fe97f17b000)
libnss3.so => /usr/lib64/libnss3.so (0x00007fe97ee3b000)
libnssutil3.so => /usr/lib64/libnssutil3.so (0x00007fe97ec0f000)
libplds4.so => /lib64/libplds4.so (0x00007fe97ea0b000)
libplc4.so => /lib64/libplc4.so (0x00007fe97e805000)
libnspr4.so => /lib64/libnspr4.so (0x00007fe97e5c7000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007fe97e3a7000)

J'ai essayé la mise à jour de PostgreSQL à l'aide de yum update, puis gem désinstaller pg et gem install pg. Mais j'obtiens toujours le même problème. Le bijou lui-même s'installe sans aucune erreur.

Je ne suis pas vraiment sûr de savoir comment déboguer plus loin. Que dois-je faire pour installer, mettre à jour ou faire référence à la nécessaire compatible avec les bibliothèques?

Le serveur est en cours d'exécution:

  • CentOS 6.7
  • psql (PostgreSQL) 8.4.20
  • ruby 2.2.3p173 (2015-08-18 révision 51636) [x86_64-linux]
  • rails 4.2.4
  • pg gem 0.18.4

Grâce

  • Avez-vous essayé "bundle intall --sans production"? Veuillez consulter stackoverflow.com/questions/11127486/...
  • exécuter bundle update et puis bundle install
  • Merci, mais aucun de ces travaux. La forte réponse sur la question est un peu au-delà de moi. Les environnements sont également différents (il était sur Mac OSX, je suis sur CentOS 6.7 ) de sorte que le fichier de la bibliothèque de la structure est totalement différente. En outre, la trace que je reçois n'est pas de me dire laquelle de ces bibliothèques est incompatible pour autant que je peux dire qui est ce qui rend beaucoup plus difficile à déboguer.
  • J'obtiens le même message d'erreur, mais pas à l'aide de Rails, juste pg.
InformationsquelleAutor Boxhead | 2015-11-19