mk-mode BLOG

このブログは自作の自宅サーバに構築した Debian GNU/Linux で運用しています。
PC・サーバ構築等の話題を中心に公開しております。(クローンサイト: GitHub Pages

ブログ開設日2009-01-05
サーバ連続稼働時間
Reading...
Page View 合計
Reading...
今日
Reading...
昨日
Reading...

Cygwin - rbenv インストール!

[ プログラミング ] [ Cygwin, Ruby ]

こんばんは。

Cygwin 上で複数の種類・バージョンの Ruby を管理できる RVM(Ruby Version Manager) を使用していましたが、最近流行り(?)の rbenv に変更しました。

rbenv は RVM にある gemset の概念がない等 RVM と異なる部分が多々ありますが、単純に色んなバージョンの Ruby を使いたいだけなら RVM より手軽のようです。 ※RVM と rbenv の違いについては、説明しているサイトが多数あるのでここでは説明しません。

後学のために、インストール手順だけ記録しておきます。

作業記録

0. 前提条件

作業した環境は Cygwin 1.7.15 です。 CentOS 等でも同様の作業になると思います。(もちろん Windows はダメ) また、git コマンドを使ってインストールするので、git がインストール済みであること。

1. RVM のアンインストール

RVM がインストール済みだと rbenv と衝突するのでアンインストールしておく。

1
$ rvm implode

2. rbenv のインストール

ユーザホームディレクトリで git コマンドを使用してインストールする。

1
2
3
4
5
6
7
8
$ cd
$ git clone git://github.com/sstephenson/rbenv.git .rbenv
Cloning into '.rbenv'...
remote: Counting objects: 1040, done.
remote: Compressing objects: 100% (416/416), done.
remote: Total 1040 (delta 649), reused 961 (delta 596)
Receiving objects: 100% (1040/1040), 138.39 KiB | 163 KiB/s, done.
Resolving deltas: 100% (649/649), done.

3. .bash_profile または .bashrc の編集

.bash_profile(または .bashrc)に以下の記述を追加する。

1
2
export PATH=$HOME/.rbenv/bin:$PATH
eval "$(rbenv init -)"

そして、シェルの有効化。

1
$ source ~/.bash_profile

4. rbenv のインストール確認

rbenv がインストールできているか確認する。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$ rbenv
rbenv 0.3.0
usage: rbenv <command> [<args>]

Some useful rbenv commands are:
   commands      List all rbenv commands
   rehash        Rehash rbenv shims (run this after installing binaries)
   global        Set or show the global Ruby version
   local         Set or show the local directory-specific Ruby version
   shell         Set or show the shell-specific Ruby version
   version       Show the current Ruby version
   versions      List all Ruby versions known by rbenv
   which         Show the full path for the given Ruby command
   whence        List all Ruby versions with the given command

See 'rbenv help <command>' for information on a specific command.
For full documentation, see: https://github.com/sstephenson/rbenv#readme

5. ruby-build のインストール

rbenv install 時に必要な ruby-build をインストールする。 ユーザホームディレクトリで作業する。

1
2
3
4
5
6
7
8
9
10
11
$ cd
$ git clone git://github.com/sstephenson/ruby-build.git
Cloning into 'ruby-build'...
remote: Counting objects: 926, done.
remote: Compressing objects: 100% (421/421), done.
remote: Total 926 (delta 453), reused 858 (delta 393)
Receiving objects: 100% (926/926), 98.80 KiB | 120 KiB/s, done.
Resolving deltas: 100% (453/453), done.
$ cd ruby-build
$./install.sh
Installed ruby-build at /usr/local

6. ruby-build のインストール確認

ruby-build がインストールできているか確認する。

1
2
3
4
$ ruby-build
ruby-build 20120524
usage: ruby-build [-v|--verbose] definition prefix
       ruby-build --definitions

7. インストール可能な Ruby の一覧

以下のコマンドで rbenv インストール可能な一覧を確認できる。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
$ rbenv install -l
usage: rbenv install VERSION
       rbenv install /path/to/definition

Available versions:
  1.8.6-p383
  1.8.6-p420
  1.8.7-p249
  1.8.7-p302
  1.8.7-p334
  1.8.7-p352
  1.8.7-p357
  1.8.7-p358
  1.8.7-p370
  1.9.1-p378
  1.9.2-p180
  1.9.2-p290
  1.9.2-p318
  1.9.2-p320
  1.9.3-dev
  1.9.3-p0
  1.9.3-p125
  1.9.3-p194
  1.9.3-preview1
  1.9.3-rc1
  2.0.0-dev
  jruby-1.6.3
  jruby-1.6.4
  jruby-1.6.5
  jruby-1.6.5.1
  jruby-1.6.6
  jruby-1.6.7
  jruby-1.6.7.2
  jruby-1.7.0-preview1
  maglev-1.0.0
  rbx-1.2.4
  rbx-2.0.0-dev
  ree-1.8.6-2009.06
  ree-1.8.7-2009.09
  ree-1.8.7-2009.10
  ree-1.8.7-2010.01
  ree-1.8.7-2010.02
  ree-1.8.7-2011.03
  ree-1.8.7-2011.12
  ree-1.8.7-2012.01
  ree-1.8.7-2012.02

8. rbenv でのインストール

例として、ruby-1.9.2-p320 をインストールして有効化するまでの手順は以下の通り。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
$ rbenv install 1.9.2-p320
Downloading http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz...
Installing yaml-0.1.4...
Installed yaml-0.1.4 to /home/hoge/.rbenv/versions/1.9.2-p320
Downloading http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p320.tar.gz...
Installing ruby-1.9.2-p320...
Installed ruby-1.9.2-p320 to /home/hoge/.rbenv/versions/1.9.2-p320
Downloading http://production.cf.rubygems.org/rubygems/rubygems-1.8.23.tgz...
Installing rubygems-1.8.23...
Installed rubygems-1.8.23 to /home/hoge/.rbenv/versions/1.9.2-p320

$ rbenv global 1.9.2-p320  # 使用する Ruby の切替

$ rbenv rehash             # 変更の有効化

$ rbenv versions           # インストールされてるrubyのバージョン一覧
* 1.9.2-p320 (set by /home/hoge/.rbenv/version)

$ rbenv version            # 現在有効になっているrubyのバージョン
1.9.2-p320 (set by /home/hoge/.rbenv/version)

9. rbenv でインストールした Ruby のアンインストール

rbenv にはアンインストールコマンドが用意されていないようです。 アンインストールするには、"/home/hoge/.rbenv/versions" ディレクトリ配下の削除したい Ruby のディレクトリを丸ごと削除すればよい。 ※詳細は不明ですが、当方はこの方法でうまくいきました。


今までそれほど RVM を使ってきたわけでもありませんが、単純に異なるバージョンの Ruby を使いたいだけな自分には rbenv の方が使いやすそうです。

以上。

Comments