Обновлен до Yosemite и теперь рубиновые библиотеки ломаются
Я обновился до Yosemite, и теперь, когда я пытаюсь настроить начальное приложение rails, используя rails new <appname>
Я получаю сообщение об ошибке:
/Users/****/.rubies/ruby-2.0.0-p451/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:54:in `require ': dlopen (/ Users / * **** /. rubies / ruby-2.0.0-p451 / lib / ruby /2.0.0/x86_64-darwin13.3.0/openssl.bundle, 9): символ не найден: _SSLv2_client_method (LoadError)
Я использую homebrew и chruby, а не RVM, и моя оболочка - Oh-my-Zsh.
1 ответ
Я подозреваю, что вы скомпилировали Ruby на старой версии Mac OS X, и это зависело от _SSLv2_client_method
функция из OpenSSL. Эта функция очень старая (SSL v2 - старый протокол), поэтому она, вероятно, была удалена из OpenSSL, и при обновлении операционной системы, вероятно, появилась новая версия OpenSSL без этой функции.
В любом случае, вы должны просто попытаться удалить весь ~/.rubies
папку (или переместить ее на новое место) и, начиная с нуля, перекомпилировать Ruby в соответствии с chruby Wiki.
Вот связанный вопрос, который я нашел, просто найдя Google для "_SSLv2_client_method ruby mac": не найден символ пакета Ruby: _SSLv2_client_method (LoadError)