クラスタマシンにMeCab, CaboChaインストール

 前回までに作成した、チャンク頻度計算プログラムを走らせるため、統合牧場のクラスタマシンに必要なライブラリをインストールする作業を行いました。使用するのはMeCabとCaboCha、それにCaboChaをRubyから呼び出すためのバンドルで、これらを全て管理者権限を持たない自分のローカルにインストールし、パスを通しました。
 まずはMeCabです。MeCab本体と辞書のソースをダウンロードしてきて、configureを実行する際に、自分のホームフォルダ以下のフォルダにインストールするよう指示を加えました。辞書のインストールにはmecabへのパスが必要なので、.bash_profileに

export PATH=/Users/(home)/local/bin:$PATH

を追加しておきました。

$ cd mecab-X.X
$ ./configure --prefix=/Users/(home)/local
$ make
$ make install

$ cd mecab-ipadic-2.7.0-XXXX
$ ./configure --prefix=/Users/(home)/local --with-charset=utf8 --enable-utf8-only
$ make
$ make install

 つぎにCaboChaです。CaboChaが利用しているCRF++を先にインストールしました。

$ ./configure --prefix=/Users/(home)/local
$ make
$ make install

 それからCaboChaをインストールしました。ローカルにインストールしたCRF++へインクルードパスを通すため、.bash_profileに

export C_INCLUDE_PATH=/Users/(home)/local/include:$C_INCLUDE_PATH
export CPLUS_INCLUDE_PATH=/Users/(home)/local/include:$CPLUS_INCLUDE_PATH

を追加しておきました。またCaboChaのインストール中にiconvに関するエラーが発生するため、configureに引数を追加しました。

$ LIBS=-liconv ./configure --prefix=/Users/(home)/local --with-charset=utf8 --enable-utf8-only
$ make
$ make install

 これでインストールは上手く行ったのですが、いざcabochaとして起動しようとすると、MeCabではutf8なのにCaboChaがEUC-JPだよというエラーが出て上手く動きませんでした。この解決のため、/Users/(home)/local/lib/cabocha/model/にcharset-file.txtというファイルを作り、UTF-8とだけ記述し、/Users/(home)/local/etc/のcabocharcというファイル内の、# charset-fileの行のコメントアウトを外しました。こうすることで上手く動きました。

 最後にCaboChaのRubyバンドルのインストールを行いました。CaboChaのソースフォルダの中にあるRubyフォルダに移動し、

$ ruby extconf.rb --with-opt-lib=/Users/(home)/local/lib
$ make
$ make install

 としてインストールすることができました。これで全て用意できたので、早速クラスタマシンでチャンク頻度を計算させてみようと思います。次回その結果を見つつ、利用できそうなチャンクを見つけていこうと思います。