# プログラミング # 技術的な話題# 技術的な話題-vim# 技術的な話題-Ruby

Ruby1.8とRuby1.9の共存

香り屋vimにif_rubyってはいってるんだ。それじゃvimrcにrubyでなんやかんや書いていろいろと遊べるな、ふーん。と思って、適当にやってみたのですが下記のようなエラーが出るのです。

function MyCnt の処理中にエラーが検出されました: 行 12: E370: ライブラリ msvcrt-ruby18.dll をロードできませんでした E266: このコマンドは無効です,ごめんなさい: Rubyライブラリをロードできませんでした.

そういえばこのマシンはRuby1.9.1がインストールされてたな。どうしよう…。コンパイラはあるな……やってしまうか? というところまで思い悩んだのですが、あまりにも非効率に過ぎるので別の方法を模索することにしました。

ということで表題のRuby1.8とRuby1.9を共存する方法をググるとあったのでその方法をメモしときます

前提条件はruby1.8とruby1.9がインストールされていることです。

ruby1.8はOne-Click Ruby Installer

ruby1.9@ITこの記事や、ActiveScriptRuby and Other packagesにあるパッケージを利用してインストールしてください。

注意点としてはRuby1.9はC:\Ruby19としてインストールしてください。

でここからが、共存方法。C:[ruby](http://d.hatena.ne.jp/keyword/ruby)\bin\ruby19.batを作成します。pathの通っているruby1.8の方ですね。で下記の様に記述します。

@echo off
set __CALLER_PATH__=%CD%
cd C:\Ruby19\bin
ruby %*
cd %__CALLER_PATH__%

共存できたか試してみます。

C:\>ruby -v
ruby 1.8.6 (2008-08-11 patchlevel 287) [i386-mswin32]

C:\>ruby19 -v
ruby 1.9.1p243 (2009-07-16 revision 24175) [i386-mswin32]

vimスクリプトの動作も問題なさげです。しばらくはこれで遊んでみます。

■参考サイト様