MeCab で分かち書き

現在、POPFileKakasi (と Text::Kakasi)で分かち書きを行っているのだけど、これを MeCab に変更するパッチを作成してみた。MeCab の方が Kakasi よりも分かち書きの精度が高く、かつ高速だということなので、どのくらい違うのか試してみたいということで。
まずはインストール方法についてのメモ。いつものように Mac OS X 10.3.9 (Panther) にて。
MeCab 本体についてはほとんど悩むようなところはなし。ipadic については、もっと新しいバージョンが公開されているが、上記ページに書かれているように 2.4.4/2.5.0/2.5.1 でないとだめなようだ。2 桁目が偶数のものが安定バージョンということなので、2.4.4 を使うことにした。
mecab-perl は、make 時に「ld: flag: -undefined dynamic_lookup can't be used with MACOSX_DEPLOYMENT_TARGET environment variable set to: 10.1」というエラーが発生。MACOSX_DEPLOYMENT_TARGET という環境変数が「10.1」になっていると指定されたオプションが使えないということなので、試しに「setenv MACOSX_DEPLOYMENT_TARGET 10.3」(C シェルの場合)としてみたところ、エラーは解消された。原因はよくわからないが、10.1 では動かないということなのかな。
そして、分かち書きMeCab を使うように POPFile に手を入れる。分かち書き部分は Classifier/MailParse.pm 内にまとまっているので、ここを修正するだけでよい。これはあっさりできてしまったので、パッチセクションにて公開。素の 0.22.2 ではなく、先日公開した日本語パッチを適用した状態で差し替えを行うことを想定している。そのまま適用しても、Kakasi 用の排他処理が無効になるだけなので事実上は問題ないはずだけど。
ということで、適用後 1 日ほど様子をみているところだけど今のところこれといって問題なし。分かち書きされる位置が変わることによって一時的に精度が下がることもあるかもしれないとも思っていたが、思ったほどの影響はないようだ(変更してからこれまで分類ミスは携帯から送った URL のみの短いメール 1 通のみ)。速度についてはそれほど体感できていないが、少なくとも遅くなったということはなく、快調だ。