ソフトウェアバージョンの差異に悩まされる人は多いと思う。
同じOS上で違うバージョンのrubyを動かしたいことはまあある。
/home/you/foo
以下は既存コードがあるから1.8系のままでで動かしたいし、/home/you/bar
以下は新しい試みとして2.0系を動かしたいとか。
そこでrbenvという便利なrubyバージョン管理ツールがある。
rbenvにより、あるディレクトリ以下のrubyバージョンを任意に指定できる。
rbenv をインストールする
詳細はgithubのREADME.md
参照。https://github.com/sstephenson/rbenv
1. 最新コードをローカルにチェックアウトする
githubから最新版を ~/.rbenv
にチェックアウトする
1
$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
2. pathを通すため、shellの設定を変更する
~/.rbenv/bin
を $PATH
に追加する
1
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshrc
1
$ echo 'eval "$(rbenv init -)"' >> ~/.zshrc
bash ユーザは ~/.zshrc
の代わりに ~/.bash_profile
へ。
ubuntu ユーザは ~/.zshrc
の代わりに ~/.profile
へ。
3. 設定変更内容を反映するため、shell を再起動する
(番外編) rbenv を最新版にアップグレードする
1
2
$ cd ~/.rbenv
$ git pull
ruby-build をインストールして、任意の ruby バージョンをインストールできるようにする
ruby-build
は rbenv のプラグインで、いろいろなバージョンの ruby のインストールを rbenv install
コマンドでできるようになる。
インストールは、公式に書いてあるように以下。
1
$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
MAC使いだと homebrew でいける。
1
$ brew install ruby-build
インストール可能な ruby バージョンを一覧表示する
任意のバージョンの ruby をインストールする
1
$ rbenv install 1.9.3-pxx
ruby-build を upgrade する
新しいバージョンの ruby が公開されたりすると、ruby-build を upgrade する必要がある。
git pull
してあげれば良い。
1
2
$ cd ~/.rbenv/plugins/ruby-build/
$ git pull origin master
rbenv で任意バージョンの ruby へ切り替えたり
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# List all Ruby versions known by rbenv
$ rbenv versions
# switch version
$ rbenv global 1.9.3-pxx
# back to system default
$ rbenv global system
# 特定のディレクトリ以下のRubyバージョンを切り替え
$ rbenv local 1.9.3-p327
# ローカル設定を解除
$ rbenv local --unset
# path to installed ruby or gem
$ rbenv rehash