ruby gnome2を不完全ながら野良ビルドできたことに気を良くして、rabbitを動かしてみようと思いやってみた。
- ruby 1.9.1(rumix版)
- ruby gnome2は自前で野良ビルドしたruby-gnome2-0.19.3-r3758-i386-mswin32.exe
- rdtoolは0.6.20
- rabbit 0.6.4
まず、rdtoolのインストールでpost-installには失敗した。
install version.rb C:/rumix/ruby/lib/ruby/site_ruby/1.9.1/rd install visitor.rb C:/rumix/ruby/lib/ruby/site_ruby/1.9.1/rd mkdir -p C:/rumix/ruby/lib/ruby/site_ruby/1.9.1/rd hook C:/msys/1.0/home/khayashi/Project/ruby/rdtool-0.6.20/lib/rd/post-install failed: undefined method `each' for "dot.rd2rc":String Try 'ruby setup.rb --help' for detailed usage.
設定ファイルのみのようなので、とりあえず次にrabbitをインストールした。
rabbitをインストールしてサンプルを動かしてみた。
1.9.1にはto_aメソッドがないらしい。
C:\msys\1.0\home\khayashi\Project\ruby\rabbit-0.6.4\sample>ruby -S rabbit lightning-talk.rd C:/rumix/ruby/lib/ruby/site_ruby/1.9.1/rd/tree.rb:50:in `parse': undefined method `to_a' for #<String:0x5ae5ddc> (NoMeth odError) from C:/rumix/ruby/lib/ruby/site_ruby/1.9.1/rd/rdfmt.rb:10:in `initialize' from C:/rumix/ruby/lib/ruby/site_ruby/1.9.1/rabbit/parser/rd.rb:18:in `new' from C:/rumix/ruby/lib/ruby/site_ruby/1.9.1/rabbit/parser/rd.rb:18:in `parse' from C:/rumix/ruby/lib/ruby/site_ruby/1.9.1/rabbit/parser.rb:17:in `parse' from C:/rumix/ruby/lib/ruby/site_ruby/1.9.1/rabbit/canvas.rb:335:in `block in parse' from C:/rumix/ruby/lib/ruby/site_ruby/1.9.1/rabbit/canvas.rb:726:in `keep_index' from C:/rumix/ruby/lib/ruby/site_ruby/1.9.1/rabbit/canvas.rb:332:in `parse' from C:/rumix/ruby/lib/ruby/site_ruby/1.9.1/rabbit/frame.rb:58:in `parse' from C:/rumix/ruby/bin/rabbit:567:in `parse' from C:/rumix/ruby/bin/rabbit:717:in `do_display' from C:/rumix/ruby/bin/rabbit:781:in `main' from C:/rumix/ruby/bin/rabbit:785:in `<main>'
とりあえず、以下のファイルの該当箇所def parseを書き換えてみた。
C:\rumix\ruby\lib\ruby\site_ruby\1.9.1\rd\tree.rb
if RUBY_VERSION >= '1.9.1' set_root(parser.parse([@src], self)) else set_root(parser.parse(@src.to_a, self)) end
いちおうバージョンなんかも考慮してみる。
ここまでやると、GTKによるwindow枠は表示されるがグレー表示となる。
こんな感じ。
ruby -wで実行してみるとwarningがどっさり出ているので、時間があればまた今度ということでお茶を濁してみる。
Windows 7だと自前ビルドしたruby gnome2だとrequire 'pango'でxmlCreatePushParseCtxtがlibxml2.dllからみつからないというエラーになっている(XPだと出ない)し、rabbitがというよりもruby gnome2のビルドでやらかしている気がしなくもない。(ちなみに試したのはXP)