rbenvでruby 1.8.6インストール時のopensslエラー対応

rbenvでruby 1.8.6をインストール時にopensslのエラー対応
ruby 1.8.6はopenssl 0.9.8までしか対応していないため、openssl 1.0.1とopenssl-develがインストール済みのCentOS 7だとエラーになった。
STDOUT:
STDERR: Downloading ruby-1.8.6-p420.tar.gz...
-> http://dqw8nmjcqpjn7.cloudfront.net/118e6f24afce8e8a10dced23635168e58da6c9121a21f120c82f425d40a1e321
Installing ruby-1.8.6-p420...

BUILD FAILED (CentOS Linux 7 using ruby-build 20140908-9-g5285456)

Inspect or clean up the working tree at /tmp/ruby-build.20140910200104.26154
Results logged to /tmp/ruby-build.20140910200104.26154.log

Last 10 log lines:
^
ossl.c:95:22: error: unknown type name 'STACK'
ossl_##name##_sk2ary(STACK *sk) \
^
ossl.c:119:1: note: in expansion of macro 'OSSL_IMPL_SK2ARY'
OSSL_IMPL_SK2ARY(x509crl, X509_CRL)
^
make[1]: *** [ossl.o] Error 1
make[1]: Leaving directory `/tmp/ruby-build.20140910200104.26154/ruby-1.8.6-p420/ext/openssl'
make: *** [all] Error 1

0.9.8をソースからビルド
cd /usr/local/src
# 0.9.8yが現時点での最新安定版
wget http://www.openssl.org/source/openssl-0.9.8y.tar.gz
tar xzf openssl-0.9.8y.tar.gz
cd openssl-0.9.8y
./config --prefix=/usr/local
make
make install

rbenvでrubyのインストール
CFLAGSについて
CFLAGS="-O2 -fno-tree-dce -fno-optimize-sibling-calls" RUBY_CONFIGURE_OPTS="--with-openssl-dir=/usr/local/bin" rbenv install 1.8.6-p420

試してみる
irb
irb(main):001:0> require 'openssl'
=> true
irb(main):002:0> require 'open-uri'
=> true
irb(main):004:0> open('https://www.google.com').read
=> "<!doctype html>...."
posted by digital-squad at 2014年09月11日 22時43分 | Comment(0) | TrackBack(0) | Web関連ニュース
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバック