ruby on rails - with - Ruby Bundle Symbol no encontrado:_SSLv2_client_method(LoadError)
set ruby version with rbenv (10)
Estaba intentando hacer algunas actualizaciones a openssl usando homebrew y de alguna manera logré romper todo. No puedo hacer nada ahora, esto es lo que obtengo cuando trato de hacer la instalación de paquetes:
$ bundle install
/Users/asServer/.rbenv/versions/2.1.2/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'': dlopen(/Users/asServer/.rbenv/versions/2.1.2/lib/ruby/2.1.0/x86_64-darwin13.0/openssl.bundle, 9): Symbol not found: _SSLv2_client_method (LoadError)
Referenced from: /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/2.1.0/x86_64-darwin13.0/openssl.bundle
Expected in: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib
in /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/2.1.0/x86_64-darwin13.0/openssl.bundle - /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/2.1.0/x86_64-darwin13.0/openssl.bundle
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/2.1.0/openssl.rb:17:in `<top (required)>''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/2.1.0/rubygems/security.rb:11:in `<top (required)>''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/2.1.0/rubygems/package.rb:43:in `<top (required)>''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/2.1.0/rubygems/dependency_installer.rb:3:in `<top (required)>''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/installer.rb:2:in `<top (required)>''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/cli/install.rb:78:in `run''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/cli.rb:146:in `install''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/vendor/thor/command.rb:27:in `run''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/vendor/thor/invocation.rb:121:in `invoke_command''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/vendor/thor.rb:363:in `dispatch''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/vendor/thor/base.rb:440:in `start''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/cli.rb:9:in `start''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/bin/bundle:20:in `block in <top (required)>''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/lib/bundler/friendly_errors.rb:5:in `with_friendly_errors''
from /Users/asServer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.6.3/bin/bundle:20:in `<top (required)>''
from /Users/asServer/.rbenv/versions/2.1.2/bin/bundle:23:in `load''
from /Users/asServer/.rbenv/versions/2.1.2/bin/bundle:23:in `<main>''
Podrías ser un idiota como yo, con múltiples openssl''s
Tuve el mismo problema con la 2.1.2 y la excelente respuesta de Ryan Dlugosz no fue suficiente. Mi problema fue que tenía varias versiones de openssl instaladas (creo que las había instalado a través de brew
y git
en proyectos anteriores).
Tuve que eliminar / opt / local / bin / openssl y luego reconstruir 2.1.2.
Compruebe global ruben rbenv
$ rbenv global
2.1.2
Compruebe openssl
$ which -a openssl
/opt/local/bin/openssl
/opt/local/bin/openssl
/usr/bin/openssl
Acaba con el duplicado de openssl
$ sudo rm -rf /opt/local/bin/openssl
Reconstruir 2.1.2
$ rbenv install -f 2.1.2
Downloading openssl-1.0.1g.tar.gz...
-> http://dqw8nmjcqpjn7.cloudfront.net/53cb818c3b90e507a8348f4f5eaedb05d8bfe5358aabb508b7263cc670c3e028
Installing openssl-1.0.1g...
Installed openssl-1.0.1g to /Users/globber/.rbenv/versions/2.1.2
Downloading ruby-2.1.2.tar.gz...
-> http://dqw8nmjcqpjn7.cloudfront.net/f22a6447811a81f3c808d1c2a5ce3b5f5f0955c68c9a749182feb425589e6635
Installing ruby-2.1.2...
Installed ruby-2.1.2 to /Users/globber/.rbenv/versions/2.1.2
Cuando no resolvió el problema en absoluto, sugiero eliminar RVM. Y reinstalar RVM y rieles.
borrando RVM
¿Cómo puedo eliminar RVM (Ruby Version Manager) de mi sistema?
instalacion de RVM, Rail
$ curl -L https://get.rvm.io | bash -s
$ rvm conseguir estable
requisitos de $ rvm
$ rvm install 2.0.0 --with-openssl-dir = $ HOME / .rvm / usr
$ rvm use 2.0.0 $ actualización de gema --sistema 2.0.3
$ gem install rails --version 4.0.5
Acabo de arreglar un problema similar en mi sistema. Debe reconstruir su instalación de Ruby 2.1.2 y se volverá a vincular con el SSL recién actualizado.
$ rbenv install 2.1.2
rbenv: /Users/ryan/.rbenv/versions/2.1.2 already exists
continue with installation? (y/N) y
Downloading ruby-2.1.2.tar.gz...
-> http://dqw8nmjcqpjn7.cloudfront.net/f22a6447811a81f3c808d1c2a5ce3b5f5f0955c68c9a749182feb425589e6635
Installing ruby-2.1.2...
Installed ruby-2.1.2 to /Users/ryan/.rbenv/versions/2.1.2
Además de las respuestas de aceptación anteriores, es posible que tenga que decirle a rbenv que use la versión recién instalada. Por ejemplo, tenía la versión anterior en ~ / .rbenv / version, por lo que rbenv siempre estaba usando la versión anterior. La configuración manual de la nueva versión en ese archivo (oa través de la línea de comandos) debería solucionar el problema.
rbenv install -f 2.1.2
rbenv versions
rbenv global 2.1.2 //sets global version to 2.1.2
En caso de que pueda ayudar a alguien: tenía instalada una versión más nueva de Ruby (2.1.2) y, en mi archivo .ruby-version, hice referencia a la anterior (2.0.0-p353)
Cambiar mi archivo .ruby-version a 2.1.2 solucionó el problema para mí.
Tiene el mismo problema para 1.9.3-p547, bajo rvm
rvm reinstall ruby-1.9.3-p547
Ruby se vuelve a instalar, pero falla al configurar gemset_pristine
para la aplicación porque
libv8 version 3.16.14.3 failed
que fue la razón por la que llegué a este punto en primer lugar. Círculo vicioso de la frustración ...
actualizar
Comprueba la versión de tu plataforma. Tengo, por ejemplo, Darwin 10.8 y eso no está listado aquí . Por lo tanto, a menos que su versión de la gema libv8 tenga un binario precompilado para su plataforma, tomará mucho tiempo (de largo a largo). Salga a cenar, al cine, relájese ... Si es suficiente, pregunte, tal vez creen una distribución binaria ...
Tuve un problema similar después de actualizar openssl. Yo uso rvm. Lo miré mejorando rvm.
$ rvm get stable
A continuación reinstalé 1.9.3.
rvm reinstall ruby-1.9.3-p545
Después de volver a instalar, corrí:
$ rvm gemset pristine
Si ve algún error al restaurar su conjunto de gemas, su mejor opción será vaciar el gemset y reconstruirlo.
rvm gemset use mygemset
rvm gemset empty mygemset
gem install bundler
bundle install
Si tiene varios conjuntos de gemas, tendrá que repetir estos pasos para cada uno de ellos.
Tuve un problema similar, que ocurrió después de actualizar a ruby ​​2.2.2. Sin embargo, mi entorno es un poco diferente haciendo que las soluciones anteriores no funcionen.
Estoy usando:
- OSX Yosemite (10.10.4)
- chruby
- instalación de rubí
- openssl (instalado a través de homebrew)
Los siguientes comandos resolvieron esto en mi situación:
> sudo ruby-install -r /opt/rubies ruby 2.2.2 -- --with-openssl-dir=/usr/local/opt/openssl
> gem install bundler
> bundler install
Tuvo el mismo error y lo resolvió con brew upgrade openssl
usuarios rbenv:
Es útil asegurarse de que está utilizando la versión correcta de ruby. Si reinstala rbenv o instala un nuevo ruby, cambie a la versión de ruby ​​que acaba de instalar:
$ rbenv local 2.1.3