WindowsにRuby1.9.0-4(2008-08-26 revision 18849)をインストール

東京Ruby会議01 その2Windows環境へRuby1.9をインストールすると決意したので、コンパイルからインストールまでを試みました。
(慣れない作業で思ったより解決に時間がかかりました。)

必要なソフトウェア(今回使用したツール)

  1. Microsoft Visual C++ 2008 Express Edition
  2. Ruby1.9.0-4

あると便利なソフトウェア
  ・wget.exe(GnuWin32)
    http://sourceforge.net/project/showfiles.php?group_id=23617
  ・SVN
    http://www.collab.net/downloads/subversion/
    補足)SVNリポジトリ(最新版)
    http://svn.ruby-lang.org/repos/ruby/trunk
    ※最新版をコンパイルするには、Ruby(1.8系)が必要

今回の作業環境

  OS      : Windows XP SP2(2008-08-30時点のUpdateを適用済み)
  作業ディレクトリ: c:\tmp

作業前に確認した方がいいこと

http://www.ruby-lang.org/ja/の「ダウンロード」からはSVNリポジトリの紹介しかなく(2008-08-30時点)、1.9.0-4のスナップショット版がftpでリリースされている情報に辿りつくまで時間がかかりました。
今回は作業終わった後に、「Ruby 1.9.0-4」で検索して事実を知る。

作業メモ

1.ruby1.9.0-4.zipを取得し、c:\tmpに解凍
2.Visual Studio 2008 コマンドプロンプトを起動
3.Makefile作成


C:\tmp>cd c:\tmp\ruby-1.9.0-4
C:\tmp\ruby-1.9.0-4>win32\configure.bat --prefix=c:/ruby19
4.nmake から バージョン確認まで

C:\tmp\ruby-1.9.0-4>nmake
C:\tmp\ruby-1.9.0-4>nmake install
C:\tmp\ruby-1.9.0-4>c:\ruby19\bin\ruby -v
5.zlib取得
 wgetを利用。http://www.zlib.net/zlib123.zipでダウンロード可能

C:\tmp\ruby-1.9.0-4>cd ../
C:\tmp>wget http://www.zlib.net/zlib123.zip
 c:\tmpに解凍
6.zlibにマニフェストを埋め込み、rubyのbinフォルダへコピー
 補足)http://msdn.microsoft.com/ja-jp/library/ms235591.aspx

C:\tmp>cd zlib123
C:\tmp\zlib123>nmake -f win32\Makefile.msc
C:\tmp\zlib123>mt -manifest zlib1.dll.manifest -outputresource:zlib1.dll;2
C:\tmp\zlib123>copy zlib1.dll c:\ruby19\bin
7.zlib.so のビルド

C:\tmp>cd ruby-1.9.0-4\ext\zlib
C:\tmp\ruby-1.9.0-4\ext\zlib>c:\ruby19\bin\ruby.exe extconf.rb --with-zlib-include=c:\tmp\zlib123 --with-zlib-lib=c:\tmp\zlib123
8.nmakeとinstall

C:\tmp\ruby-1.9.0-4\ext\zlib>nmake
C:\tmp\ruby-1.9.0-4\ext\zlib>nmake install

所感

インストーラ偉大!とはいえば終わってしまいます。
しかし、コンパイルから試みることで失敗をきっかけに色々知ることができました。
 ・ライブラリ読込エラーでつまずき、GnuWin32の存在に辿りついた。
 ・メーリングリストの重要さに気づいた。
 ・正誤含め、ブログでは情報が散在しているため、正解に辿りつくのは難しい。
  ruby-dev@ruby-lang.orgを購読した方がいい。
 ・検索する中で毎月25日リリースの話や、色々な技術情報を知るきっかけを得られた。


遠回りも意外と重要


さて、次はTokyoRubyKaigiの持ち帰りを検証するとしよう。