2011年10月2日日曜日

CaBoCha on Ubuntu 11.04 with charset UTF-8

構文解析器CabochaをUbuntuに実行する際、詰まった点がそこそこあったので、メモしておく。
特に後半に関してはWebでエラーログを検索しても情報がほとんど無かったため、手探り感があった。
Cabochaのインストールそのものについては、他にたくさんのBlogが存在しているので、それについては省く。
このブログに辿り着いた人は多分、
param.cpp(70) [ifs] no such file or directory: /etc/cabocharc
こういうログか、あるいは
morph.cpp(108) [charset() == decode_charset(dinfo->charset)] Incompatible charset: MeCab charset is UTF-8, Your charset is EUCJP-WIN
こういうログで困っているのだろう、と推測する。
まず前者であるが、これはもうエラーログ通り /etc/cabocharc が存在していないことがエラーの原因だ。

sudo find / -name cabocharc

としてやると、おそらく、

/usr/local/etc/cabocharc

というものが見つかる筈だ。
これを

 /etc/cabocharc

にコピーしてやればよい。
次に後者である。
これは、 charset-file.txt に書いてある文字コードと、cabocha の文字コードが一致していないことによって生じている。

sudo find / -name charaset-file.txt

としてやり、セッティングファイルを探す。
いくつか出てくるかもしれないし、一つかもしれない。
それは色々な場合があるので分からないが、そのうちの一つがUTF-8になっていることを確認し(無ければ編集し)する。
次に、先ほどコピーしてやったcabocharcを開く。
コメントアウトされた charaset-filr = PATH という行が見つかる筈だ。
コメントアウトを解除し、先ほどUTF-8と書いてあったファイルへのPATHを記入し、保存してやる。
これで、問題なく動くようになるはずだ。

2 件のコメント:

  1. 初コメ失礼します。後者の方の不具合で2時間近く悩んでいたのでとても助かりました!

    返信削除
  2. コメント有難う御座います。
    記事がお役に立ったのであれば、筆者冥利に尽きますね。

    返信削除

注: コメントを投稿できるのは、このブログのメンバーだけです。