Ошибка OpenSSL при установке ruby ​​2.0.0-p195 на Mac с rbenv

Я пытаюсь установить Ruby 2.0.0-p195 с помощью rbenv на Mac (Mountain Lion) и получил эту ошибку.

BUILD FAILED

Inspect or clean up the working tree at /var/folders/vt/27n8h2yj27v7rzq58075f3_m0000gn/T/ruby-build.20130618163859.1669
Results logged to /var/folders/vt/27n8h2yj27v7rzq58075f3_m0000gn/T/ruby-build.20130618163859.1669.log

Last 10 log lines:
installing default gems:      /Users/me/.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0 (build_info, cache, doc, gems, specifications)
                              bigdecimal 1.2.0
                              io-console 0.4.2
                              json 1.7.7
                              minitest 4.3.2
                              psych 2.0.0
                              rake 0.9.6
                              rdoc 4.0.0
                              test-unit 2.0.0.0
The Ruby openssl extension was not compiled. Missing the OpenSSL lib?

Когда я запустил brew install openssl, он сказал

Warning: openssl-1.0.1e already installed

Следуя решению в этом потоке https://github.com/sstephenson/ruby-build/issues/305, я попытался установить последний стабильный таким образом и получил ту же ошибку

env CFLAGS='-g -O2' RUBY_CONFIGURE_OPTS="--with-readline-dir=`brew --prefix readline`" rbenv install 2.0.0-p195

Любые идеи?

Ответы

Ответ 1

Попробуйте добавить OpenSSL к параметрам конфигурации с помощью параметра - with-openssl-dir:

$ CONFIGURE_OPTS="--with-openssl-dir=`brew --prefix openssl`" rbenv install 2.0.0-p195

Если вы используете Homebrew, вам нужно установить OpenSSL перед запуском выше, выполнив:

$ brew install openssl

ОБНОВЛЕНИЕ (см. комментарий @JarkkoLaine ниже):

Только для записи вам не нужно использовать настройки конфигурации больше с ruby-build и homebrew. Однако мне пришлось переустановить openssl с homebrew, чтобы он работал: brew удалить openssl; brewОбновить; brew установить openssl; rbenv install 2.0.0-p247. См. this для больше информации.

Ответ 2

Я исправил это, выполнив:

brew link openssl --force

Mac OSX 10.9.4

Ответ 3

Обновление до последней версии ruby-build исправило проблему для меня:

Как и у OP, я получил

BUILD FAILED

Inspect or clean up the working tree at /Users/me/.rbenv/sources/2.0.0-p247
Results logged to /var/folders/3x/y_8y8vr53ws_kxj97km79q5h0000gn/T/ruby-build.20130704172404.3106.log

Last 10 log lines:
installing default gems:      /Users/me/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0 (build_info, cache, doc, gems, specifications)
                              bigdecimal 1.2.0
                              io-console 0.4.2
                              json 1.7.7
                              minitest 4.3.2
                              psych 2.0.0
                              rake 0.9.6
                              rdoc 4.0.0
                              test-unit 2.0.0.0
The Ruby openssl extension was not compiled. Missing the OpenSSL lib?

но установив последнюю версию ruby-build, используя

# Don't forget brew doctor and brew update if required
brew upgrade ruby-build

зафиксировал его.

Ruby-build имела некоторые изменения между тем, когда OP спрашивал и теперь, что объясняет, почему это сработало для меня, но не для OP, использующего последнюю стабильную версию ruby-build.

Ответ 4

Для тех, у кого проблемы с установкой openssl.

У меня была эта ошибка на моем Mac 10.8.4

brew install openssl

created directory `/usr/local/Cellar/openssl/1.0.1e/include/openssl'
make: *** [install_sw] Error 13

READ THIS: https://github.com/mxcl/homebrew/wiki/troubleshooting

These open issues may also help:
    https://github.com/mxcl/homebrew/pull/19429
  • Создайте каталог, если он не существует

    sudo mkdir /usr/local/etc/openssl
    
  • Измените права. Замените и с вашим именем и группой (например, serge: admin)

    sudo chown -R <username>:<group> /usr/local/etc/openssl/
    
  • Повторить установку openssl

    brew install openssl
    
  • Установите curl-ca-bundle

    brew install curl-ca-bundle
    
  • установить ruby ​​

    CONFIGURE_OPTS="--with-openssl-dir=`brew --prefix openssl`" rbenv install 2.0.0-p195
    

Бинго

Ответ 5

Решение с использованием ruby-install:

После удаления и установки openssl пару раз (возможно, не нужно) я успешно пробовал это:

ruby-install ruby 2.1.3 -- --with-openssl-dir=`brew --prefix openssl`

Ответ 6

Недопустимая библиотека - libssl * -dev */openssl * -dev *, в зависимости от вашего дистрибутива.

Ответ 7

Эта проблема снова появилась для меня с Mac OS 10.9.5

Mac обновил инструменты командной строки и обновил openssl, который сломал rbenv.

Я пробовал все эти решения, но никто из них не работал. Все было обновлено, но я не мог установить новые драгоценные камни или создать рубины.

Мое решение было:

  • Удалите рубиновую версию (для меня это было 2.1.1)
  • Brew удалить ruby-build и rbenv
  • Brew Переустановите rbenv и ruby-build

Надеюсь, это поможет вам, если вы столкнетесь с этим!