mecab-rubyのインストール方法
こんにちは。
今回はMecabをRubyで使えるようにするために、OS Xにmecab−rubyをインストールします。
mecab−rubyはソースをダウンロードしてきてインストールします。
ただ、gemでもインストールすることができるのでビルドしたくない方はそちらで。
しかし、gemの場合はruby2.0以上じゃないと正常に動作しないようなので(未確認ですが)、今回は2.0以下で使いたいこともあり、普通にソースを取得してビルドする方法を採用しました。
ソースの取得と解凍
まずはソースを取得しましょう。
なお、mecab-rubyはmecabのバージョンに合わせたものをダウンロードしないといけないので注意してください。
私の環境ではmecab 0.996なのでそれに合わせます。
$ wget http://mecab.googlecode.com/files/mecab-ruby-0.996.tar.gz $ tar zxfv mecab-ruby-0.996.tar.gz $ cd mecab-ruby-0.996
extconf.rb の修正
次に extconf.rb ファイルを修正します。
このファイルでMakefileを作っているのですが、現状のままではMac標準のmecabを参照してしまうので、brewで入れたものを参照するように修正します。
$CFLAGS += ' ' + `#{mecab_config} --cflags`.chomp $LDFLAGS += ' -L' + `#{mecab_config} --libs-only-L`.chomp # この行を追加
インストール
さて、これでインストールする準備が整いました。
先程のファイルを実行して make install します!
$ ruby extconf.rb $ make $ sudo make install
これで何もエラーが出なければOKです。
ただ、ruby 1.9 より下のバージョンだと以下のようなエラーが出るかもしれません(自分は出ました)。
-c mecab_wrap.cpp mecab_wrap.cpp:1859:10: fatal error: 'ruby/version.h' file not found
mecab_wrap.cpp を見てみると、今のディレクトリから相対参照で ruby/version.h を include するようにしていたので、以下のように変えたら動くようになりました。
/* 下の行をコメントアウト */ /* #include "ruby/version.h" */ #include <version.h> /* このように変更 */
テストしてみる
さて、makeが無事に通ったらテストしてみましょう。
$ ruby test.rb
これで結果が出力されればOKです!
お疲れ様でした。
なお、rbenvでrubyを複数バージョン入れている場合は、バージョンごとに上記のインストールをやらないとダメです(自分はこれで若干詰まってました・・・)。
それでは。