Ruby/Windows7で1.8と1.9環境を同居させる

最終更新: 2010-08-13 (金) 09:58:11 (2478d)

このページの内容はRuby/Windows7で1.8と1.9環境を同居させる [俺の基地]に移動しました。

目次 Edit

バージョンと製造年月日 Edit

2010-08-11

1.8と1.9の同居どころか、さまざまなRuby実装を簡単に切り替えれるツールPikがある Edit

Pikというものを使えば環境を簡単に切り替えられるらしい

Pikのインストール Edit

Downloads for vertiginous's pik - GitHub
ここらへんからダウンロードする。

現状の最新バージョンはver0.2.8

gem環境からインストールしろという解説が多いが、ベースをプレーンな状態にしたいのでmsiのインストーラーバージョンを使う

ダブルクリックするだけであっさり完了

メッセージでインストールディレクトリにパスを通してくれてたみたいなのでここからは解説どおりにする。

Windowsネイティブ実装のRuby1.8.6のインストール Edit

定番のwindowsネイティブ実装のRuby1.8.6をインストールする。
こいつはPikを駆動させるために使うので単に
Downloads
ここからダウンロードしていれる

インストーラーで楽チン
一応確認

ruby --version
ruby 1.8.6 (2010-02-04 patchlevel 398) [i386-mingw32]

オッケー

Pikの管理に1.8.6を加える Edit

現状

ruby

コマンドで起動できるrubyをPikの管理に加える
サブコマンドaddを引数なしで起動すると現状のruby(pikを駆動している?)が登録される。

pik add
** Adding:  186: ruby 1.8.6 (2010-02-04 patchlevel 398) [i386-mingw32]
 Located at:  D:\Ruby186\bin

登録されたかどうか確認してみる

pik list
* 186: ruby 1.8.6 (2010-02-04 patchlevel 398) [i386-mingw32]

おー!186として登録されました。
続いて1.9.1も登録しましょう

1.9.1をインストールしてPikの管理に加える Edit

まずpikコマンドでインストールできるrubyの一覧を得ます

pik list -r

DevKit:
 3.4.5r3: http://rubyforge.org/frs/download.php/66888/devkit-3.4.5r3-20091110.7z
IronRuby:
 0.3.0: http://rubyforge.org/frs/download.php/53552/ironruby-0.3.0.zip
 0.5.0: http://rubyforge.org/frs/download.php/57126/ironruby-0.5.0.zip
 0.6.0: http://rubyforge.org/frs/download.php/59717/ironruby-0.6.0.zip
 0.9.0: http://rubyforge.org/frs/download.php/61382/ironruby-0.9.0.zip
 0.9.1: http://rubyforge.org/frs/download.php/64504/ironruby-0.9.1.zip
 0.9.2: http://rubyforge.org/frs/download.php/66606/ironruby-0.9.2.zip
 "1.0": http://rubyforge.org/frs/download.php/70179/ironruby-1.0.zip
 1.0-rc1: http://rubyforge.org/frs/download.php/67955/ironruby-1.0-rc1.zip
 1.0-rc2: http://rubyforge.org/frs/download.php/69180/ironruby-1.0-rc2.zip
 1.0.0rc: http://rubyforge.org/frs/download.php/69853/ironruby-1.0.0rc.zip
 1.0rc3: http://rubyforge.org/frs/download.php/69665/ironruby-1.0rc3.zip
 1.0v4: http://rubyforge.org/frs/download.php/70181/ironruby-1.0v4.zip
JRuby:
 1.4.1: http://jruby.org.s3.amazonaws.com/downloads/1.4.1/jruby-bin-1.4.1.zip
 1.5.1: http://jruby.org.s3.amazonaws.com/downloads/1.5.1/jruby-bin-1.5.1.zip
Ruby:
 1.8.6-p398-2: http://rubyforge.org/frs/download.php/71102/ruby-1.8.6-p398-i386-mingw32-2.7z
 1.8.7-p249-1: http://rubyforge.org/frs/download.php/71081/ruby-1.8.7-p249-i386-mingw32-1.7z
 1.8.7-p299: http://rubyforge.org/frs/download.php/71493/ruby-1.8.7-p299-i386-mingw32.7z
 1.9.1-p378-1: http://rubyforge.org/frs/download.php/71082/ruby-1.9.1-p378-i386-mingw32-1.7z
 1.9.1-p429: http://rubyforge.org/frs/download.php/71496/ruby-1.9.1-p429-i386-mingw32.7z
 1.9.2-rc1: http://rubyforge.org/frs/download.php/71498/ruby-1.9.2-rc1-i386-mingw32.7z
 1.9.2dev-preview3-1: http://rubyforge.org/frs/download.php/71175/ruby-1.9.2dev-preview3-i386-mingw32-1.7z

こんな結果が出た。1.9.1のp429をインストールしてみる

pik install ruby -v 1.9.1-p429
pik 0.2.8
** Downloading:  http://rubyforge.org/frs/download.php/71496/ruby-1.9.1-p429-i38
6-mingw32.7z
  to:  C:\Users\hoge\.pik\downloads\ruby-1.9.1-p429-i386-mingw32.7z

ruby-1.9.1-p429-i386-min...7z: 100% |oooooooooo|   4.8MB/  4.8MB Time: 00:00:34

You need the 7zip utility to extract this file.
Would you like me to download it? (yes/no)  |yes|
yes
** Downloading:  http://downloads.sourceforge.net/sevenzip/7za465.zip
  to:  C:\Users\hoge\.pik\downloads\7za465.zip

7za465.zip: 100% |ooooooooooooooooooooooooooooo| 352.5KB/352.5KB Time: 00:00:00

** Extracting:  C:\Users\hoge\.pik\downloads\ruby-1.9.1-p429-i386-mingw32.7z

  to:  C:\Users\hoge\.pik\rubies\Ruby-191-p429
done
** Adding:  191: ruby 1.9.1p429 (2010-07-02 revision 28523) [i386-mingw32]
 Located at:  C:\Users\hoge\.pik\rubies\Ruby-191-p429\bin

って感じで入った
確認してみる

pik list
* 186: ruby 1.8.6 (2010-02-04 patchlevel 398) [i386-mingw32]
  191: ruby 1.9.1p429 (2010-07-02 revision 28523) [i386-mingw32]

切り替えてみる Edit

現状

pik use 186
ruby --version
ruby 1.8.6 (2010-02-04 patchlevel 398) [i386-mingw32]

191

pik use 191
ruby --version
ruby 1.9.1p429 (2010-07-02 revision 28523) [i386-mingw32]

お〜!切り替わっている

じゃあirbみたいなツールはどうだ

pik use 191
irb
"hoge".size
4
"ほげ".size
2

おー

pik use 186
irb
"hoge".size
4
"ほげ".size
4

おー

バージョンの切り替えは子プロセスのみに影響 Edit

バージョンの切り替えはコンピュータ中の全部にグローバルで影響が出るわけではなくグローバルでは最初からインストールされているrubyで動いていて、切り替えコマンドを打ち込んだプロセスから立ち上げたプロセスのみバージョンの切り替えが反映するみたいだ。

参考サイト Edit

コメント Edit


タグ Edit

Tag: Windows Windows7 Ruby 環境構築 移動済み

リロード   new Edit 凍結 差分 Upload 複製 名前変更   Home Page list Word Search Recent Update バックアップ Referer   Help   最終更新のRSS
Last-modified: 2010-08-13 (金) 09:58:11 (2478d)