EC2でmecab+phpを使う

yummecabが入らないので手動インストールの方法
基本的にrootでおこなってます。


gccとmakeがデフォで入ってないのでインストールする

yum -y install gcc*
yum -y install make


mecabのインストール*1

wget http://downloads.sourceforge.net/project/mecab/meca/0.98/mecab-0.98.tar.gz
tar zxvf mecab-0.98.tar.gz
cd mecab-0.98
./configure --with-charset=utf-8
make
make install


辞書のインストール

wget http://downloads.sourceforge.net/project/mecab/mecab-ipadic/2.7.0-20070801/mecab-ipadic-2.7.0-20070801.tar.gz
tar zxvf mecab-ipadic-2.7.0-20070801.tar.gz
cd mecab-ipadic-2.7.0-20070801
./configure --with-charset=utf-8
make
make install


実行

mecab
すもももももももものうち
すもも  名詞,一般,*,*,*,*,すもも,スモモ,スモモ
も      助詞,係助詞,*,*,*,*,も,モ,モ
もも    名詞,一般,*,*,*,*,もも,モモ,モモ
も      助詞,係助詞,*,*,*,*,も,モ,モ
もも    名詞,一般,*,*,*,*,もも,モモ,モモ
の      助詞,連体化,*,*,*,*,の,ノ,ノ
うち    名詞,非自立,副詞可能,*,*,*,うち,ウチ,ウチ
EOS

できた。


php_mecabのインストール

wget http://www.opendogs.org/pub/php_mecab-0.3.0.tgz
tar zxvf php_mecab-0.3.0.tgz
cd php_mecab-0.3.0
phpize
./configure

ここでconfigureのエラー。
versionが php 5.3.10 / php_mecab 0.3.0 なので
mecab.cの変更が必要。
詳しくは、
さくらインターネットのレンタルサーバでMeCab Extensionを利用する方法
を参照。
変更されたmecab.cをダウンロードして
php_mecab-0.3.0フォルダの中にあるmecab.cに上書き。

make
make install


php.iniの追記

vi /etc/php.ini
; インストールしたフォルダを指定
extension_dir=/usr/lib64/php/modules/
extension=mecab.so


テスト作成

vi ~/mecab.php
<?php
$mecab = new MeCab_Tagger();
echo $mecab->parse("すもももももももものうち");
?>


実行

php ~/mecab.php
すもも  名詞,一般,*,*,*,*,すもも,スモモ,スモモ
も      助詞,係助詞,*,*,*,*,も,モ,モ
もも    名詞,一般,*,*,*,*,もも,モモ,モモ
も      助詞,係助詞,*,*,*,*,も,モ,モ
もも    名詞,一般,*,*,*,*,もも,モモ,モモ
の      助詞,連体化,*,*,*,*,の,ノ,ノ
うち    名詞,非自立,副詞可能,*,*,*,うち,ウチ,ウチ
EOS

できた。

*1:2012-03-21現在、mecab本体がsourceforgeにないっぽい…ボクの目か頭がオカシイのかもしれないけど…