Я в отчаянии, в течение двух (!!) дней без решения проблемы со следующей задачей.
После обновления до Lion я хотел установить дополнительные рубины, используя самую последнюю версию rvm.
Вот что происходит, когда я потом вызываю bundler:
/Users/felix/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require': dlopen(/Users/janroesner/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/x86_64-darwin11.1.0/digest/sha1.bundle, 9): Symbol not found: _SHA1_Init (LoadError)
Хорошо, проблема openssl. Таким образом, я проверил, что нет openssl, но системного в / usr с библиотеками в / usr / lib и заголовками в / usr / include / openssl. Проверьте.
Я решил установить более свежую версию с brew. После этого никакой ruby не компилируется с ошибкой, что BN_rand_range и BN_peudo_rand_range уже определены.
Кажется, более строгая проверка типов самой последней версии gcc, поэтому я раскомментировал строки 411 и 412 в /usr/include/openssl/bn.h, которые привели к конфликту, поскольку ruby определяет оба по отдельности. Теперь ruby компилируется, но я получаю ту же ошибку. Символ не найден: _SHA1_Init.
Итак, я удалил комментарии из заголовочного файла openssl bn.h, который я поместил туда раньше, и попробовал обратное. Я прокомментировал эти строки в ~ / .rvm / src / ruby-1.9.2-p290 / ext / openssl / openssl_missing.h
Тот же результат.
После этого я полностью удалил ~ / .rvm, переустановил его и ... возникла та же проблема.
Теперь я попробовал:
rvm pkg install openssl
rvm remove 1.9.2-p290
rvm install 1.9.2-p290 -C --with-openssl-dir=$rvm_path/usr
Тот же результат.
Я в отчаянии. Кто-нибудь может помочь?
С уважением
Felix