CentOS5.5でText::Mecabをインストール

CentOS5.5でText::Mecabをインストール

Text::Mecabがインストール出来なかった。
そういえば昔諦めた気がする。
で、エラー内容を見てみる。

# perl Makefile.PL
Path to mecab config? [/usr/local/bin/mecab-config] 
detected mecab version 0.98
Using compiler flags '-I/usr/local/include -DMECAB_MAJOR_VERSION=0 -DMECAB_MINOR_VERSION=98'...
Using linker flags '-L/usr/local/lib -lmecab -lstdc++'...

Text::MeCab needs to know what encoding you built your dictionary with
to properly execute tests.

Encoding of your mecab dictionary? (shift_jis, euc-jp, utf-8) [euc-jp] utf-8
Using utf-8 as your dictionary encoding
Detected the following mecab information:
   version: 0.98
   cflags: -I/usr/local/include -DMECAB_MAJOR_VERSION=0 -DMECAB_MINOR_VERSION=98 -I src
   libs: -L/usr/local/lib -lmecab -lstdc++
   include: /usr/local/include
/root/.cpanm/work/1294395897.25225/Text-MeCab-0.20011/assertlibeiKR8srG: error while loading shared libraries: libmecab.so.1: cannot open shared object file: No such file or directory
/root/.cpanm/work/1294395897.25225/Text-MeCab-0.20011/assertlibEejMJieF: error while loading shared libraries: libmecab.so.1: cannot open shared object file: No such file or directory
wrong result: 'mecab', 'mecab'

libmecab.so.1 が見つからないらしい。
/usr/local/lib/libmecab.so.1 にインストールされている。

CentOSの標準設定ではPATHが通っていないらしいので、/usr/local/lib/ 配下のライブラリが読み込まれない様子。

で、/etc/ld.so.conf あたりをいじる必要がある。

# vi /etc/ld.so.conf

/usr/local/lib    ←最終行に追記

ldconfigを実行して、ライブラリ読み込みパスを更新。

# ldconfig 

※pathが通っていない場合は /sbin/ldconfig

Text::Mecab のディレクトリへ移動して手動でインストール

perl Makefile.PL
make
make test
make install