2010.05.23 (Sun)
[係り受け解析] cabochaのインストールでエラー [ver6.0-pre4]
とある事情で、「かぼちゃ/cabocha」という係り受け解析器をインストールすることになった。
これは形態素解析器:Mecabの作者が作成したものである。
で、ググって探してみるとver0.53くらいの古いものを発見。
この0.53のバージョンでも一応動作はするのですが、UTF-8に対応していないため、日本語を入力すると文字化けします。
nkfコマンドなどでいちいち変換すれば使えなくもないのですが、やはり面倒。
なので、UTF-8に対応している最新バージョンの0.60を configure -> make をしてインストールすることにしました。
[依存関係]
cabochaには依存しているパッケージが有ります。
・Mecab
・Juman
・TinySVM(Ver0.60以降は不要)
・Chasen(Ver0.60以降は不要)
・CRF++(Ver0.60のmakeで下のようなエラーが出たため、必要だった)
[Download]
cabochaでググってまず見つかるのはコチラのサイト。
しかし、ここにあるリンクはVer0.53の古いもの。
そのため、最新バージョンをきまぐれ日記でリンクされているsourceforge.net からDL.
** 2010/05/23 現在、最新版はver0.60-pre4。
ダウンロードして来たファイルは、.tar.bz2というファイル形式である。
以下のようにして解凍
tar xvfj caboha-0.60pre4.tar.bz2 cabocha-0.60pre4
CRF++も同様にDLしてきて configure, make などすれば普通にインストールできるはず。
mecab や juman は apttitude のパッケージあったのでそれで。
[インストール]
通常通り、以下のようにしてインストールする。
$./configure --with-charset=UTF8
$make
ここで、エラー発生。
error while loading shared libraries: libcrfpp.so.0: cannot open shared object file: No such file or directory
libcrfpp.so.0 が共有ライブラリに見つかりませんと怒られる。
しかし、
# find / -name libcrfpp.so.0
としてどこにいるか確認してみると、ちゃんとそこに存在していた。
/usr/local/lib にパスが通っていないだけか? と思い、チェック。
/etc/ld.so.conf には /etc/ld.so.conf.d/*.conf という記載が有ったので、
/etc/ld.so.conf.d/libpath_for_cabocha.conf というファイルを新規作成、以下を記載。
/usr/local/lib
これで
# ldconfig
とし、再度 make したらコンパイル・リンクできました。
# make install
として完了。
[実行例]
$ cabocha
かぼちゃのインストールが完了しました!
かぼちゃの-D
インストールが-D
完了しました!
EOS
これは形態素解析器:Mecabの作者が作成したものである。
で、ググって探してみるとver0.53くらいの古いものを発見。
この0.53のバージョンでも一応動作はするのですが、UTF-8に対応していないため、日本語を入力すると文字化けします。
nkfコマンドなどでいちいち変換すれば使えなくもないのですが、やはり面倒。
なので、UTF-8に対応している最新バージョンの0.60を configure -> make をしてインストールすることにしました。
[依存関係]
cabochaには依存しているパッケージが有ります。
・Mecab
・Juman
・TinySVM(Ver0.60以降は不要)
・Chasen(Ver0.60以降は不要)
・CRF++(Ver0.60のmakeで下のようなエラーが出たため、必要だった)
error: crfpp.h: No such file or directory
[Download]
cabochaでググってまず見つかるのはコチラのサイト。
しかし、ここにあるリンクはVer0.53の古いもの。
そのため、最新バージョンをきまぐれ日記でリンクされているsourceforge.net からDL.
** 2010/05/23 現在、最新版はver0.60-pre4。
ダウンロードして来たファイルは、.tar.bz2というファイル形式である。
以下のようにして解凍
tar xvfj caboha-0.60pre4.tar.bz2 cabocha-0.60pre4
CRF++も同様にDLしてきて configure, make などすれば普通にインストールできるはず。
mecab や juman は apttitude のパッケージあったのでそれで。
[インストール]
通常通り、以下のようにしてインストールする。
$./configure --with-charset=UTF8
$make
ここで、エラー発生。
error while loading shared libraries: libcrfpp.so.0: cannot open shared object file: No such file or directory
libcrfpp.so.0 が共有ライブラリに見つかりませんと怒られる。
しかし、
# find / -name libcrfpp.so.0
としてどこにいるか確認してみると、ちゃんとそこに存在していた。
/usr/local/lib にパスが通っていないだけか? と思い、チェック。
/etc/ld.so.conf には /etc/ld.so.conf.d/*.conf という記載が有ったので、
/etc/ld.so.conf.d/libpath_for_cabocha.conf というファイルを新規作成、以下を記載。
/usr/local/lib
これで
# ldconfig
とし、再度 make したらコンパイル・リンクできました。
# make install
として完了。
[実行例]
$ cabocha
かぼちゃのインストールが完了しました!
かぼちゃの-D
インストールが-D
完了しました!
EOS
テーマ : UNIX/Linux ジャンル : コンピュータ
管理人 |
2012.01.05(木) 08:25 | URL |
【コメント編集】
インストール時に同様のエラーがでたため、参考にさせて頂きました。
ありがとうございます。
以下の部分について、記載ミスではないかと思われるので、報告させて頂きます。
/etc/ld.so.conf.d/libpath_for_cabocha.conf というファイルを新規作成、以下を記載。
× /usr/local/bin
○ /usr/local/lib
確認よろしくおねがいします。
ありがとうございます。
以下の部分について、記載ミスではないかと思われるので、報告させて頂きます。
/etc/ld.so.conf.d/libpath_for_cabocha.conf というファイルを新規作成、以下を記載。
× /usr/local/bin
○ /usr/local/lib
確認よろしくおねがいします。
通りすがり |
2012.01.02(月) 17:20 | URL |
【コメント編集】
この記事のトラックバックURL
この記事へのトラックバック
| BLOGTOP |
今はこのインストールした環境がないのでちょっと確認できませんが、自分の記事を読んでもlibへのパスを書くべきところに見えます。
なので、通りすがりさんがおっしゃる通り /usr/local/lib へのパスにしたほうがよさそうです、記事を修正したいと思います。
ご報告にありがとうございました。