« ポンちゃん | トップページ | デビル »

MeCab試験養殖中 その3 「MeCab.soを作る」

 [ 2011/05/04 MeCab-0.98 ruby binding for Windows のビルド — 清水川Web 1.0 documentation ]

 リンク先が一番まとまっていたりするので便利なのもあり、dll 利用などの方法についてもあるものの、やはり mecab-ruby バインディングが使えるほうがうれしいかなあということで作成を試みた。基本的にはリンク先のように extconf.rb を修正してということなのだけれど、Windows において MeCab を標準でインストールするとライブラリパス指定で気をつけないとハマる。

 C:\Program Files (x86)\MeCab・・・ のままだと空白によって分断されて処理されるので、C:\PROGRA~2\MeCab・・・ としないと駄目。(Makefile 中の Ruby 関係のパス部分も同様に)

 Makefile を作ってさて nmake とすると

ruby.h のビルド方法が指定されていません

 といわれてしまうので、やむなく Makefile の最下行にある当該部分をコメントアウトしてから nmake してみたら MeCab.so ができてしまった。本当にそれでいいのかはわからないのだけれど、添付されている test.rb やいくつか試してみたりしたところでは問題なく処理できている様子。

#$(OBJS): {.;$(VPATH)}$(hdrdir)/ruby.h {.;$(VPATH)}$(hdrdir)/ruby/defines.h $(arch_hdrdir)/ruby/config.h

 もちろん MeCab から返される文字列は ASCII-8bit になっているので、適宜 force_encoding() してあげる必要があるけれど。このあたりの補完のために現在作業中。

Windows7(x64)
Ruby-1.9.3-p0
MeCab-0.991
Visual Studio 2010 Express VC++

|
|

« ポンちゃん | トップページ | デビル »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/28835/53805300

この記事へのトラックバック一覧です: MeCab試験養殖中 その3 「MeCab.soを作る」:

« ポンちゃん | トップページ | デビル »