外で開発する場合に、マウスがないと不便なので、 vimouseをMacに移植するためにMacRubyをインストールしてみる事にしました。 最初はインストーラを以下のサイトから落としてきて普通にインストールしました。

インストール自体は非常に簡単に終了したのですが、 macirbを実行しようとすると以下のようなエラーが出て、 入力をいっさい受け付けなくなるという悲しい状況に。

   1  % macirb
   2  dyld: lazy symbol binding failed: Symbol not found: _rb_enc_find_index
   3    Referenced from: /Library/Frameworks/MacRuby.framework/Versions/0.3/usr/lib/ruby/1.9.0/universal-darwin9.0/nkf.bundle
   4    Expected in: flat namespace
   5  
   6  dyld: Symbol not found: _rb_enc_find_index
   7    Referenced from: /Library/Frameworks/MacRuby.framework/Versions/0.3/usr/lib/ruby/1.9.0/universal-darwin9.0/nkf.bundle
   8    Expected in: flat namespace

どうやら今のバージョン(0.3.1)のMacRubyには、 NKFに問題があって、日本語環境でmacirbを実行しようとすると問題があるようでした。

という事で、最新版なら直ってるかもしれないという望みにかけて、 trunkから切り出してきたMacRubyも試してみました。

   1  % git svn clone http://svn.macosforge.org/repository/ruby/MacRuby -T trunk
   2  % cd MacRuby
   3  % rake
   4  % sudo rake install
   5  % macruby -v
   6  MacRuby version 0.4 (ruby 1.9.0 2008-06-03) [universal-darwin9.0]

しかし残念ながら、上記の問題はまだ直っていないようです。

posted by Png genki on Mon 22 Sep 2008 at 15:18 with 3 comments

Comments:

Face xibbar over 15 years ago.

LANG=C macirb ではいかが?

Png 瀧内元気 over 15 years ago.

LANGを指定すればOkですね。しかし気になる。 どうやら encoding.c の中に rb_enc_find_index の定義が無いのが原因のような気がしますね。

Png 瀧内元気 over 15 years ago.

rb_enc_find_indexに加えて、rb_enc_*系の関数で存在してないものがいくつかある感じですね。 Ticketを見ると、MacRuby-0.4のリリース時には用意される予定なのかも。

とりあえずはLANG=Cで対処したら良いですね。

or Preview
Social Bookmarks
  • Delicious
  • B_entry899
  • Clip_16_12_w
Services from s21g
twpro(ツイプロ)
Twitterプロフィールを快適検索
地価2009
土地の値段を調べてみよう
MyRestaurant
自分だけのレストラン手帳
Formula
ブログに数式を埋め込める数式コミュニティ