macos - kali - No se puede requerir openssl, instalar OpenSSL y reconstruir ruby(preferido) o usar fuentes que no sean HTTPS
install ruby on mac (5)
Estoy intentando instalar
jekyll
y he encontrado un error.
Estoy ejecutando Mac OS X 10.11.4 (El Capitan).
$gem install jekyll
ERROR : While executing gem ... (Gem::Exception)
Unable to require openssl, install OpenSSL and rebuild ruby (preferred) or use non-HTTPS sources
$gem source -l
https://ruby.taobao.org
$which openssl
/usr/local/bin/openssl
Agradezco sus sugerencias sobre cómo resolver este error.
Método 1 (Instalar OpenSSL)
Escriba todos estos comandos en su Terminal (OSX) solo para estar seguro de que ha hecho todo:
rvm get stable
brew update
brew doctor
brew install openssl
rvm install ruby-2.4 (or whatever version)
rvm use ruby-2.4 (or whatever version)
rvm gemset create jekyll
gem install jekyll
¡Finalmente, necesita instalar OpenSSL antes de compilar Ruby antes de instalar Jekyll (u otras gemas)!
Método 2 (reinstalar Ruby)
Las versiones más recientes de OSX desaprobaron openSSL.
¡Necesitas reinstalar Ruby!
RVM con OpenSSL
rvm reinstall 2.3.0 --with-openssl-dir=/usr/local/opt/openssl
Con la última versión de RVM
rvm get stable
rvm reinstall ruby-2.3.0
homebrew y OpenSSL
brew install openssl
rvm reinstall 2.3.0 --with-openssl-dir=`brew --prefix openssl`
Considerando las otras respuestas relacionadas con openssl, podemos ver el mismo error cuando intentamos ejecutarlo como superusuario en algunos casos, de la siguiente manera:
filipe@FILIPE:~$ gem install bundler
Fetching: bundler-1.14.6.gem (100%)
Successfully installed bundler-1.14.6
Parsing documentation for bundler-1.14.6
Installing ri documentation for bundler-1.14.6
Done installing documentation for bundler after 4 seconds
1 gem installed
Sin permisos de superusuario, podemos ver un comportamiento diferente, exitoso, de la siguiente manera:
brew install openssl
brew info openssl # do the suggested options
$ export LDFLAGS=-L/usr/local/opt/openssl/lib
$ export CPPFLAGS=-I/usr/local/opt/openssl/include
# For pkg-config to find this software you may need to set:
$ export PKG_CONFIG_PATH=/usr/local/opt/openssl/lib/pkgconfig
rvm reinstall <version> --with-openssl-dir=`brew --prefix openssl`
Las versiones más nuevas de OSX desaprobaron openSSL, dejando muchas dependencias rotas.
Debe reinstalar ruby, pero especifique exactamente dónde están sus bibliotecas openSSL.
Si está usando
rvm
entonces se ve así:
rvm reinstall 2.3.0 --with-openssl-dir=/usr/local/opt/openssl
Si está utilizando homebrew, entonces un acceso directo rápido a donde están sus bibliotecas es:
brew install openssl
rvm reinstall 2.3.0 --with-openssl-dir=`brew --prefix openssl`
Solo necesita configurar estas variables env para que su compilador tenga la ruta correcta para openssl libs (si usa Homebrew en macOS, intente
brew info openssl
para ver esta información):
$ export LDFLAGS=-L/usr/local/opt/openssl/lib
$ export CPPFLAGS=-I/usr/local/opt/openssl/include
# For pkg-config to find this software you may need to set:
$ export PKG_CONFIG_PATH=/usr/local/opt/openssl/lib/pkgconfig
Luego reinstale su ruby (
rvm reinstall ruby-version
)
filipe@FILIPE:~$ sudo gem install bundler
ERROR: While executing gem ... (Gem::Exception)
Unable to require openssl, install OpenSSL and rebuild ruby (preferred) or use non-HTTPS sources