自分でbuildしたrubyをrbenvで管理する

昔々のrails(2.3系)を動かしたくなったので古いrubyが必要になったのだが、その古いrubyruby-buildでビルドできなかったので自分でビルドしてrbenvで管理させることにした。

$(rbenv root)/versions の下にインストールするとrbenvの管理対象になるので、自分でビルドする場合は configure時に --prefix を指定すれば良い

export CPPFLAGS=-I/opt/X11/include
./configure --prefix=$(rbenv root)/versions/1.8.7
make
make install 

本来rbenvは、rubyのバージョン切り替えツールであってビルドツールではない(だからruby-buildはプラグイン扱い)。この使い方は通常の利用法で特殊なハックではない。

gem

gemもインストールする。rails 2.3はgem 2系では動かないのでgithubからgem 1.8.30をダウンロードする。setupする前にrbenvでバージョン指定を忘れずに

rbenv local 1.8.7-p375
ruby setup.rb

openssl

opensslが有効になっていなかったので有効にした。rubyのソースフォルダのext/opensslへ行ってビルド、インストール。

cd ext/openssl
rbenv local 1.8.7-p375
ruby extconf.rb --with-openssl-dir=/usr/local/opt/openssl
make 
make install

※ --with-openssl-dirに指定されているパスはhomebrewでopensslをインストールした場合のパス