Ruby и "вы должны перекомпилировать Ruby с поддержкой OpenSSL или изменить источники в вашем Gemfile"

используя rvm я обновил свой ruby до 1.9.3-p392, также добавил 2.0.0, в любое время, когда я пытаюсь использовать эту версию, когда я запускаю команду bundle, я получаю эту ошибку.

Could not load OpenSSL.
You must recompile Ruby with OpenSSL support or change the sources in your Gemfile from 'https' to 'http'. Instructions for compiling with OpenSSL using RVM are
available at rvm.io/packages/openssl.

я следовал нескольким различным инструкциям о том, как это исправить. Я попытался удалить версию и установить ее с помощью параметров rvm

--with-openssl-dir=$HOME/.rvm/usr

Я установил OpenSSL с rvm и macports. Обе проблемы не помогли. Я даже изменил местоположение файла ssl-сертификата, используя это:

export SSL_CERT_FILE=/Users/DarkLord/.rvm/usr/ssl/cert.pem

независимо от того, что я делаю, я продолжаю получать ошибку. Кто-нибудь может помочь мне это исправить?

4 ответов


это работает для меня:

rvm get stable

brew install libyaml

rvm pkg install openssl

rvm install ruby-2.0.0 --with-openssl-dir=$HOME/.rvm/usr

rvm use ruby-2.0.0

все кредиты идут в https://coderwall.com/p/tptocq


чтобы заставить это работать снова, мне пришлось установить homebrew и переместить мои порты mac с пути. Затем выполните следующие действия после удаления 1.9.3-p392 и 2.0.0-p0:

rvm get head --autolibs=3
rvm install 1.9.3 --with-opt-dir=/usr/bin
rvm install 2.0.0

что-то не работает с моими портами mac и openssl, а также make и configure. Это был единственный способ, которым я смог заставить rvm снова установить ruby, не получая проблем openssl или проблем с make/configure.


согласно следующему вопросу: как узнать, какой OpenSSL lib фактически используется RVM-установленным ruby

Кажется, что варианты --with-openssl-dir=... больше не действует с Ruby 1.9.3. Я пытался!--5-->

rvm install 1.9.3 --with-opt-dir=/usr/local --with-openssl

и это сработало.


Это помогает мне установить 1.9.3-head на Mac:

rvm get latest    
brew install openssl    
rvm reinstall 1.9.3-head --with-openssl-dir=`brew --prefix openssl`