Windowsに複数のRuby環境をインストールする

Windowsで複数のバージョンのRubyを利用できるようにします。当初はPikを利用しようと考えましたが、どうやら開発が進んでいないようなのでUruを利用してバージョンを管理できるようにします。既にRuby1.9.3がインストールされている状況からスタートです。

環境

  • Windows8 64bit
  • Ruby ver.1.9.3

Uruのインストール

Uruは複数のRuby環境を実現するためのツールです。Linuxのrvnやrbenvに相当します。まずは以下からUruをダウンロード。
Bitbucket uru/Downloads

解凍するとuru_rt.exeというファイルが現れます。これを適当なディレクトリに配置してパスを通します。ここでは便宜的にC:\uru\に配置したとします。

Uruの初期設定

パスを通したら初期設定します。

$ cd c:\uru\
$ uru_rt admin install
---> Installing uru into c:\uru

これでUruの準備は完了です。

Ruby2.0のインストール

続いてRuby2.0をインストールします。WindowsのRubyのインストーラーを以下から入手。
RubyInstaller.org Downloads

最新のRuby 2.0.0-p481 (x64)を取得します。 インストールディレクトリはRubyの1.9.3と同じ階層にRuby200ディレクトリを作成してインストールします。

UruにRubyを登録

次にインストールしたRuby2.0.0をUruに登録します。

$ uru admin add C:\\...\Ruby200\bin --tag 200
---> Registered ruby at C:\\...\Ruby200\bin as 200

次にもともとインストールしてあったRuby1.9.3も登録します。

$ uru admin add C:\...\Ruby193\bin --tag 193
---> Registered ruby at C:\...\Ruby193\bin as 193

--tagの後ろの値は任意です。後々、ここで指定されたtag名を用いてRubyの切り替えを行うので短い方がいいです。

さて、登録されたか確認します。

$ uru ls
    193     : ruby 1.9.3p385 (2013-02-06) [i386-mingw32]
    200     : ruby 2.0.0p481 (2014-05-08) [x64-mingw32]

出来ているようですね。
では早速Rubyを2.0に切り替えます。

$ uru 200
---> Now using ruby 2.0.0-p481 tagged as 200
$ ruby -v
ruby 2.0.0p481 (2014-05-08) [x64-mingw32]

上手くできてますね。

Ruby2.0用のDevKitをインストール

次に2.0用のDevKitもインストールします。以下のページからダウンロードしてください。
RubyInstaller.org Downloads

ダウンロードした7zipを展開します。ここでは便宜的にC:\RubyDevKit200\に展開したとします。

展開したら以下のコマンドを実行。

$ cd c:\RubyDevKit200\
$ ruby dk.rb init

するとこんなメッセージが出ます。

[INFO] found RubyInstaller v2.0.0 at C:/.../Ruby200
[INFO] found RubyInstaller v1.9.3 at C:/.../Ruby193
Initialization complete! Please review and modify the auto-generated
'config.yml' file to ensure it contains the root directories to all
of the installed Rubies you want enhanced by the DevKit.

このDevKitはRuby193を対象にはしないので、C:\RubyDevKit200\config.ymlから以下の一行を削除します(消さなくても大丈夫だと思いますが)。

- C:/.../Ruby193

その上で、DevKitのインストールを実行します。

$ ruby dk.rb install

これで環境整備終了です。