Windowsに複数バージョンのRubyをインストールする

2014年2月3日

今回の要件

  • Windowsに複数のバージョンのRubyをインストールする。
  • バージョンの切り替えを出来るようにする。
  • ネイティブなgemもインストールしたい。
    たとえばnokogiri とか jsonとか

ダウンロード

ということで、まずは必要なRubyのダウンロード。
以下のページからインストーラをダウンロードします。

http://rubyinstaller.org/downloads/
http://ruby-lang.org/からもリンクがあります。

今回はシステム側に2.0.0、切り替え用として1.8.7をインストールします。

なので、ダウンロードページから

2.0.0のインストーラと1.8.7のインストーラをダウンロード。
現時点でダウンロードページにアップされているインストーラは
Ruby 2.0.0-p353 (x64)
Ruby 1.8.7-p374

続いて、それぞれのバージョンでネイティブのgemをインストール出来るようにするために
DEVELOPMENT KITをダウンロードします。
DevKit-tdm-32-4.5.2-20111229-1559-sfx.exe
DevKit-mingw64-64-4.7.2-20130224-1432-sfx.exe

Ruby本体をインストール

まずは、2.0.0のインストーラで普通にインストールします。

[インストーラ画面割愛]

インストールパスは
C:\Ruby200-x64
とします。

システム環境変数へは、C:\Ruby200-x64\binをPathに追加設定します。

つづいて、1.8.7のインストーラを起動してインストールします。

インストーラ画面割愛

インストールパスは
C:\Ruby187
とします。

この1.8.7の場合はシステム環境変数へはパスを追加しないようにしてインストールします。

これで二つのバージョンをインストールしました。

これを切り替えるためのツールをインストールします。

切り替えるにはpikというツールを使います。

Linuxな環境とかだと、rvmのようなイメージです。

pikは以下のページよりダウンロードします。

https://github.com/vertiginous/pik/downloads

今回はインストーラ形式のものをダウンロードします。

インストールパスは
C:\pik
と指定します。

Append c:\pik\ to system path.

にチェックを入れておきます。

インストールが完了すると、プロンプト画面でpikコマンドが使えるようになります。

pikコマンドでは、rvmと同様、インストール出来るRubyのバージョンが一覧表示できます。

今回はすでに2.0.0と1.8.7をインストールしてあるので、これをpikのconfig.ymlに登録します。

pik add C:\Ruby200-x64\bin
pik add C:\Ruby187\bin

pikの設定は
c:\Users/hoge/.pik
というディレクトリに出来上がるconfig.ymlを編集します。
※出来てない場合、pik listとかをたたくと、出来上がると思います。
それでも出来上がらない場合、手で作りましょう。

設定がファイルに入ったことを確認します。c:\Users/hoge/.pik
というディレクトリに出来上がるconfig.ymlを確認します。

設定をしたら、設定内容をpikからも確認してみます。

を実行。

Rubyのバージョンを切り替えるには

切り替わると、pik listのコマンド結果で矢印の位置が1.8.7の前に来ていると思います。
Rubyのバージョンを確認してみましょう。

を実行。

続いて、

を実行。

これで、devkitがインストール完了です。

ネイティブなgemがインストール出来るか確認します。

ネイティブなgemをインストールする時にエラーが出る場合、オプションに–platform=rubyという指定をつけます。

試しにjsonを入れてみます。

これで問題なくインストール出来ていれば、完了です。

同様の作業をc:\Ruby200に対しても行います。

2.0.0用のdevkitは、また別のインストーラなので、それを使ってインストールします。

Ruby, Windows

Posted by GENDOSU