Установка openssl в ruby / rbenv


Мне нужно использовать openssl в ruby. Как я должен установить то же самое? Я установил ruby через rbenv и использую ubuntu 12.04.

kprakasam@ubuntu:~$ ruby -v
ruby 1.9.2p180 (2011-02-18 revision 30909) [x86_64-linux]

kprakasam@ubuntu:~$ irb
irb(main):001:0> require 'openssl'
LoadError: no such file to load -- openssl
    from /home/kprakasam/.rbenv/versions/1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from /home/kprakasam/.rbenv/versions/1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from (irb):1
    from /home/kprakasam/.rbenv/versions/1.9.2-p180/bin/irb:12:in `<main>'
4 16

4 ответа:

openssl необходимо установить на локальном компьютере.

Затем необходимо скомпилировать Ruby с поддержкой openssl, что достигается с помощью переключателя командной строки --with-openssl-dir.

Может быть, это вам поможет.

Сначала установите openssl:

sudo apt-get -y install build-essential zlib1g-dev libreadline-dev libssl-dev libcurl4-openssl-dev

После компиляции Руби.

Примечание: только фиксируя комментарий от @Nebojsa выше

Для Mac OSX это то, что спасло меня:

RUBY_CONFIGURE_OPTS=--with-openssl-dir=<openssl install dir> rbenv install

Из Ruby build wiki

Но.. как найти openssl install dir ?:

$ brew list openssl
/usr/local/Cellar/openssl/1.0.2d_1/bin/c_rehash
/usr/local/Cellar/openssl/1.0.2d_1/bin/openssl
...

Тогда openssl install dir это:

/usr/local/Cellar/openssl/1.0.2d_1/

И команда установки ruby заканчивается следующим образом:

RUBY_CONFIGURE_OPTS=--with-openssl-dir=/usr/local/Cellar/openssl/1.0.2d_1/ rbenv install