ruby openssl rubygems

No se puede requerir openssl en ruby



rubygems (11)

¿Utilizas RVM?

Si no, intente usarlo y ver si soluciona su problema.

Tengo openssl instalado en mi máquina virtual ubuntu12.04lts.

Cuando ejecuto el comando gema da error.

Error: al ejecutar gema (Gema :: Excepción)
No se puede requerir openssl. instala openSSL y reconstruye ruby ​​(preferido) o usa fuentes no HTTPs

Y también pruebo require openssl en modo irb. da error.

Loaderror: no se puede cargar dicho archivo --openssl
de /usr/local/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55 `require ''

Tengo openssl

$openssl version OpenSSL 1.0.1 14 mar 2012

¿Cómo arreglar el error?


Dejo esta respuesta como referencia para futuros Googlers:

Escribe todos estos comandos en tu Terminal (OSX) solo para asegurarte de que has hecho todo (esto es lo que eventualmente funcionó para mí)

rvm get stable brew update brew doctor brew install openssl rvm install ruby-2.1 (or whatever version) rvm use (ruby version here) i.e. rvm use ruby-2.1 rvm gemset create NAME i.e. rvm gemset create rails41 gem install rails -v 4.1

Finalmente...

Como muchos comentaristas han señalado, necesitas OpenSSL instalado antes de compilar Ruby antes de instalar rieles (u otras gemas)


En caso de que alguien más tenga este problema, intente reinstalar su versión de Ruby con openssl incluido

brew install openssl rvm reinstall 2.4.0 --with-openssl-dir=`brew --prefix openssl`

Es posible que ya tengas openssl, por lo que puedes ignorar el primer paso. Esto me ayudó.


Estaba recibiendo este error al instalar Ruby con RVM. Nada funcionó. rbenv a rbenv . ¡Problema resuelto!


Estos pasos me funcionaron:

  1. Rubí fijo de instalación:

    brew upgrade openssl; openssldir = el which openssl rvm reinstala ruby-2.4.2 --with-openssl-dir = $ openssldir

  2. Fuentes eliminadas y re-agregadas para gemas

    fuentes de gemas -r https://rubygems.org/ gem sources --add https://rubygems.org/


Nota: las llamadas a rubygems.org están en desuso - ¡proceda con precaución!

Tuve el mismo problema en Mac OSX después de construir también ruby2.1.0p0 desde la fuente. Ya he instalado openssl. Parece que la referencia en gemas necesitaba refrescarse. Corrí:

gem source -r https://rubygems.org/ para eliminar

seguido por

gem source -a https://rubygems.org/ para leer

Después de esto, pude ejecutar gems install bundler exitosamente.

Si se encuentra con otros errores, puede probar ./configure --with-openssl-dir=/usr/local/ssl en su directorio / ruby ​​descargado.


Para mí fue un caso de dependencias perdidas.

Pensé que tenía todas las dependencias necesarias para instalar Ruby, pero yo también estaba recibiendo un error de OpenSSL y ReadLine.

Intenté instalar Ruby con RVM sin privilegios de root, pero me dieron una lista de dependencias faltantes. Luego instalé las dependencias con un gestor de paquetes. Luego volví a intentar instalar Ruby desde el origen y todo funcionó bien.

Las dependencias que faltaban, para mi, fueron:

patch libyaml-devel autoconf gcc-c++ readline-devel libffi-devel openssl-devel automake libtool bison sqlite-devel

pero pueden ser diferentes para ti.

actualización: originalmente no recuerdo dónde encontré exactamente esta lista, pero una búsqueda rápida encontró listas similares en las siguientes páginas, lo que también podría ayudarlo:

https://www.digitalocean.com/community/tutorials/how-to-install-ruby-on-rails-on-centos-6-with-rvm

http://www.itzgeek.com/how-tos/linux/ubuntu-how-tos/install-ruby-on-rails-on-centos-ubuntu-fedora-from-source.html


Probablemente creaste Ruby desde la fuente antes de instalar OpenSSL. Asegúrate de instalarlo y luego intenta reconfigurar y reconstruir Ruby.


Recibí este error al usar debian donde openssl estaba en / usr / bin.

Siguiendo la sugerencia de jspacek reconfiguré ruby ​​usando:

./configure --with-openssl-dir=/usr/bin

Después de make y sudo make install pude instalar rieles.


Reconstruir Ruby después de ejecutar sudo apt-get install libssl-dev libreadline-dev libgdbm-dev puede resolver este problema.

Encontré esta solución here .


asegúrate de tener libssl-dev instalado:

dpkg -s libssl-dev

Si no, instálalo:

sudo apt-get -y install libssl-dev