rbenvとruby-buildで複数バージョンのrubyをインストール

ruby

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

rubyに限らずスクリプト言語環境構築では、バージョンを管理できるツールを使うのが一般的かと思います。
今回はrbenvというバージョンを切り替えるツールと、プラグインのruby-buildでインストールする方法をご紹介します。
(※インストールにはgitが必須となります。OS XではXcode Command Line Toolsを先にインストールする必要があります)

rbenv

sstephenson/rbenv · GitHub

まず始めにrbenvをインストールします。

$ cd ~
$ git clone git://github.com/sstephenson/rbenv.git .rbenv

パスを通して初期化コマンドを記述しておきます。

$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile

※zshを使っている場合は .zshenv に書いておくといいようです

シェルを再起動してrbenvコマンドを使えるようにします。

$ exec $SHELL

これでrbenvが使えるようになりました。
以下に基本的なコマンドを紹介します。

rbenvで切り替えられるrubyのバージョン一覧を出力します。

$ rbenv versions

現在設定されているrubyのバージョンを出力します。

$ rbenv version

デフォルトで使用するrubyのバージョンを切り替えます。

$ rbenv global (ruby version)

カレントディレクトリ以下で使用するrubyのバージョンを切り替えます。

$ rbenv local (ruby version)

.rbenv-versionというファイルが作られRUBY_VERSIONという環境変数が上書きされるようです。

ruby-build

sstephenson/ruby-build · GitHub

rbenvはそのままではバージョンの切り替え機能しかありませんので、次にruby-buildをインストールします。

プラグインディレクトリを作成してgithubからcloneします。

$ mkdir -p ~/.rbenv/plugins
$ cd ~/.rbenv/plugins
$ git clone git://github.com/sstephenson/ruby-build.git

インストールはこれだけです。rbenv install コマンドが追加されました。

rubyをインストール

執筆時点では1.9.3-p286が安定最新版です。

$ rbenv install 1.9.3-p286

この時OS Xではreadlineに問題があったりしてirb(対話的なrubyのシェル)で日本語を使う場合に難がありますので、
homebrew等でreadlineを入れなおしたら以下のオプションつけてインストールします。

$ CONFIGURE_OPTS="--with-readline-dir=$(brew --prefix readline) --with-openssl-dir=$(brew --prefix openssl)" rbenv install 1.9.3-p286

インストールが完了したら使えるように設定しておきます。

$ rbenv global 1.9.3-p286

アップデート

rubyの新しいバージョンがリリースされたらruby-buildをアップデートするとインストール可能になります。
アップデートの方法はとても簡単です。
rbenv、ruby-buildのそれぞれのディレクトリに移動してgit pullするだけです。

$ cd ~/.rbenv
$ git pull
$ cd ~/.rbenv/plugins/ruby-build
$ git pull

以上でrubyのインストールは終了です。
次回はbundlerを使ってgem(rubyのライブラリ)を管理する方法をご紹介します。