RVMで作るRuby 2.0とRails 4.0ベータ1のお試し環境

Ruby2.0が正式リリースされ、Rails4.0も、ベータ1が公開された。そこで、Ubuntu12.10のローカル環境に、Ruby2.0とRails4.0b1のお試し環境を構築してみた。

Rubyの複数バージョン管理ツールRVMをインストール

Railsの安定版3.2とベータ版の4.0を共存させるために、Rubyの複数バージョン管理ツールRVM(Ruby Version Manager)のGemset(Rubyのバージョン毎にGemを一緒に切り替えてくれる機能)を利用する。

先ずは、RVMは、Curlコマンドを使ってインストールする。

$ curl -L https://get.rvm.io | bash -s stable --ruby

デフォルトでは、Rubyの最新版2.0がインストールされる。続いて、安定版のRails3.2に必要なRubyのバージョン1.9.3を次の要領で追加する。

$ rvm install 1.9.3

次のコマンドを実行すると、複数のRubyバージョンがインストールされたことが確認できる。

$ rvm list

実行結果は次のとおり。Rubyのバージョンに2.0.0-p0がセットされていて、デフォルトも2.0.0-p0となっていることが分かる。

RVMList01

Rubyのバージョンを1.9.3-p392に切り替えたい場合には、次のコマンドを実行する。最後のdefaultオプションをつけなければ、現在のバージョンの切り替えのみ(デフォルトは2.0.0-p0のまま)行える。

$ rvm use 1.9.3 --default


Gemsetを使ってRails3.2と4.0b1をインストール

RVMのGemset機能を使って、安定版のRails3.2と4.0のベータ版を切り替えて使うための環境を構築する。。

先ずは、次のコマンドで、Rails3.2用のGemsetを作成。

$ rvm gemset create rails32

上記で作成したGemsetを指定して、Rubyのバージョンを1.9.3に切り替える。

$ rvm use 1.9.3@rails32

続いて、Railsのバージョンを指定してインストールする。

$ gem install rails -v 3.2.12

さらに、Rails4.0b1用のGemsetの作成とRubyのバージョンの切り替えを同時に行う。

$ rvm use 2.0.0@rails4b1 --create

最後に、Rails4.0b1をインストール。ここではrdocドキュメントとriドキュメントをインストールしないようオプション指定している。

$ gem install rails -v 4.0.0.beta1 --no-rdoc --no-ri

以上で、Rails3.2と4.0b1を切り替えて使える環境が構築された。

今後、Rails3.2を使いたいときは、次のコマンドを実行する。

$ rvm 1.9.3@rails32

Rails4.0b1を使いたいときは、次のコマンドとなる。

$ rvm 2.0.0@rails4b1

なお、rails newコマンドで作成したプロジェクト内に.ruby-versionファイルを置き、そこにRubyのバージョンとGemsetを記述しておけば、そのフォルダ内に入ると、自動的でRailsのバージョンが切り替わるうようになる。

例えば、Rails3.2であれば、1.9.3-p392@rails32、Rails4.0b1であれば、2.0.0-p0@rails4b1といった具合。

Ubuntu12.10の場合の端末の設定

今回は、Ubuntu12.10ローカル環境にRVMをインストールしたが、一連の作業が終わって、PCを再起動した後、再び端末でrvmコマンドでRubyのバージョンを切り替えようとすると、次のようなメッセージが発せられて、コマンドが実行できない場合がある。

RVMonGNOME

この場合は、端末の編集メニューからプロファイルの設定を選び、「タイトルとコマンド」タブ内の「ログインシェルとしてコマンドを実行する」にチェックを入れると問題は解決する。

GnomeTerminal