rvmの導入から利用まで設定してみた

rvmとは

Ruby Version Managerのこと。
rubyのversionを管理できるツール。

rvmをインストールする。

下記の通り実行。

$ bash < <( curl http://rvm.beginrescueend.com/releases/rvm-install-head )

.bashrcとか.zshrcに以下追記。

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"

gitがないよって言われたら

gitをインストールする。
以下手順。

# yum -y install git

ただ、これは標準のリポジトリには入ってないので、
以下の手順で外部リポジトリのDAGを入れる。
※OSがCentOSの場合
/etc/yum.repos.d/CentOS-Base.repoに以下の記述を追加。

[dag]
name=Dag RPM Repository for Redhat EL5
baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
gpgcheck=1
enabled=1
gpgkey=http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt

あとはcleanして、update

# yum clean all
# yum -y update

参考にさせて頂いた
YUMで便利な外部リポジトリを使う – ひげろぐ

パッケージが足りない…とか言われたら

rvm notesを実行し、足りないパッケージを調べる。

$ rvm notes
:
  ruby: yum install -y gcc-c++ patch readline readline-devel zlib zlib-devel libyaml-devel libffi-devel openssl-devel
:

出力されたパッケージをインストールする。

rvmのアップデート

rvmコマンドが使えることを確認したら、
まず、アップデートする。

$ rvm update --head
$ rvm reload

rvmコマンド

rvm list

インストール済のrubyを表示する。
何もインストールしていないと下記のような表示

$ rvm list

rvm rubies

ruby-1.9.2をインストールすると下記のような表示

$ rvm list

rvm rubies

   ruby-1.9.2-p180 [ x86_64 ]
rvm list known

インストールできるrubyを表示する。
下記のような表示

$ rvm list known
rvm use

使用するrubyのバージョンを指定する。

$ rvm use 1.8.7

とか、

$ rvm use 1.9.2
rvm --default use

デフォルトで使用するrubyのバージョンを指定する。

$ rvm --default use 1.9.2

とか設定すると、

$ rvm use default

で1.9.2を指定したことになる。

rvm reset

システムデフォルトのrubyを使用するように指定する。

$ rvm reset

rvm gemdir

rvmではrubygemsを管理できて、
rvm gemdirはrubygemsがインストールされる先を表示する。

$ rvm gemdir
/home/rdera/.rvm/gems/ruby-1.9.2-p180

rvm gemset list

rubygemsのgemsetを表示する。
rvmインストール直後はglobalのみが存在する。

$ rvm gemset list

gemsets for ruby-1.9.2-p180 (found in /home/rdera/.rvm/gems/ruby-1.9.2-p180)
   global

rvm gemset create

新しいgemsetを作成する。
例えば、hogeというgemsetを作成する。

$ rvm gemset create hoge
'hoge' gemset created (/home/rdera/.rvm/gems/ruby-1.9.2-p180@hoge).
$ rvm gemset list

gemsets for ruby-1.9.2-p180 (found in /home/rdera/.rvm/gems/ruby-1.9.2-p180)
   global
   hoge

rvm gemset delete

$ rvm gemset delete hoge

rubyバージョンとgemsetを指定する

$ rvm use 1.9.2@hoge

適宜追加‥‥