mecab install | cent os 5.3
mecab + phpをやってみます。
http://mecab.sourceforge.net/
http://sourceforge.jp/projects/naist-jdic/
mecab install
% tar zxfv mecab-X.X.tar.gz % cd mecab-X.X % ./configure --enable-utf8-only % make % make check % su # make install
make checkでエラーが出ますが、良いみたいです。
runtests faild in FAIL: run-cost-train.sh =================== 1 of 3 tests failed =================== make[2]: *** [check-TESTS] エラー 1 make[2]: ディレクトリ `/opt/downloads/mecab-0.98/tests' から出ます make[1]: *** [check-am] エラー 2 make[1]: ディレクトリ `/opt/downloads/mecab-0.98/tests' から出ます make: *** [check-recursive] エラー 1
mecab-naist-jdic-0.6.3-20100801.tar.gz
辞書:naist-jdic for mecabをインストール
# ./configure --with-charset=utf8 # make done! To enable dictionary, rewrite /usr/local/etc/mecabrc as "dicdir = /usr/local/lib/mecab/dic/naist-jdic" # make install
To enable dictionary, rewrite /usr/local/etc/mecabrc as “dicdir = /usr/local/lib/mecab/dic/naist-jdic”
をします。
; dicdir = /usr/local/lib/mecab/dic/ipadic dicdir = /usr/local/lib/mecab/dic/naist-jdic
TEST
# echo 'mecabのテストです。' | mecab -O simple の 助詞-連体化 テスト 名詞-サ変接続 です 助動詞 。 記号-句点 EOS
コマンドラインでは、ユーザー辞書でサイト毎に使う辞書を変えられて良いですね。
http://mecab.sourceforge.net/dic.html
php_mecabを入れます。
pear php_mecab 0.4.1 by rskyさん
php_mecabもphp.iniで辞書を変えられるようですね^-^。
# pear channel-discover pecl.opendogs.org Adding Channel "pecl.opendogs.org" succeeded Discovery of channel "pecl.opendogs.org" succeeded # pear install opendogs/mecab Failed to download opendogs/mecab within preferred state "stable", latest release is version 0.4.1, stability "beta", use "channel://pecl.opendogs.org/mecab-0.4.1" to install install failed # pear install opendogs/mecab-0.4.1 ... Build process completed successfully Installing '/usr/lib64/php/modules/mecab.so' install ok: channel://pecl.opendogs.org/mecab-0.4.1 configuration option "php_ini" is not set to php.ini location You should add "extension=mecab.so" to php.ini
インストール出来ました。
/etc/php.d/mecab.ini
extension=mecab.so
と追加します。
php -i
mecab MeCab Support => enabled Module Version => 0.4.1 Version Info => Compiled => Linked MeCab Library => 0.98 => 0.98 Directive => Local Value => Master Value mecab.default_dicdir => no value => no value mecab.default_rcfile => no value => no value mecab.default_userdic => no value => no value
簡単なスクリプトでテスト。
<?php $mecab = new MeCab_Tagger(); echo $mecab->parse('私は、PHPからmecabを利用しています。');
私 名詞,代名詞,一般,*,*,*,私,ワタシ,ワタシ,, は 助詞,係助詞,*,*,*,*,は,ハ,ワ,, 、 記号,読点,*,*,*,*,、,、,、,, PHP 名詞,固有名詞,組織,*,*,*,* から 助詞,格助詞,一般,*,*,*,から,カラ,カラ,, mecab 名詞,一般,*,*,*,*,* を 助詞,格助詞,一般,*,*,*,を,ヲ,ヲ,, 利用 名詞,サ変接続,*,*,*,*,利用,リヨウ,リヨー,, し 動詞,自立,*,*,サ変・スル,連用形,する,シ,シ,, て 助詞,接続助詞,*,*,*,*,て,テ,テ,, い 動詞,非自立,*,*,一段,連用形,いる,イ,イ,, ます 助動詞,*,*,*,特殊・マス,基本形,ます,マス,マス,, 。 記号,句点,*,*,*,*,。,。,。,, EOS
sampleはrskyさんの
https://github.com/rsky/php-mecab/tree/master/examples