mecabをphpで使用するためにphp-mecabのインストールと設定方法をメモ。
インストール時にエラーでハマったのでその対応方法も記載する。
- 環境
- CentOS 7.3
- PHP 7.0
- mecab 0.996
インストール方法
php-mecabのリポジトリにある通りにコマンドを実行する。
$ git clone https://github.com/rsky/php-mecab.git
$ cd php-mecab/mecab/
$ phpize
$ ./configure
$ make
$ make test
$ sudo make install
エラー対応
./configure の箇所で表示された2つのエラーに対応。
re2c のインストール
表示されたエラー。
configure: WARNING: You will need re2c 0.13.4 or later if you want to regenerate PHP parsers.
re2cのインストール
$ sudo yum install re2c
mecab-devel のインストール
表示されたエラー。
configure: error: mecab-config not found
mecab-develのインストール
$ sudo yum install mecab-devel
PHPファイルで使用するための設定
php.iniの設定を変更する。
sudo php -r "\$h=fopen('/etc/php.ini','a');fwrite(\$h,'extension=mecab.so'.\"\n\");"
mecabモジュールがインストールされているかを確認する。
$ php -m | grep mecab
mecab
mecabの動作テスト
テストファイル
<?php
echo (new Mecab\Tagger())->parse('MeCab は 京都大学情報学研究科−日本電信電話株式会社コミュニケーション科学基礎研究所
共同研究ユニットプロジェクトの一環として開発されたオープンソース形態素解析エンジンです.
言語, 辞書, コーパスに依存しない汎用的な設計を基本方針としています.');
テスト結果
$ php test.php
MeCab 名詞,固有名詞,組織,*,*,*,*
は 助詞,係助詞,*,*,*,*,は,ハ,ワ
京都大 名詞,固有名詞,組織,*,*,*,京都大,キョウトダイ,キョートダイ
学 名詞,接尾,一般,*,*,*,学,ガク,ガク
情報 名詞,一般,*,*,*,*,情報,ジョウホウ,ジョーホー
学 名詞,接尾,一般,*,*,*,学,ガク,ガク
研究 名詞,サ変接続,*,*,*,*,研究,ケンキュウ,ケンキュー
科 名詞,接尾,一般,*,*,*,科,カ,カ
− 記号,一般,*,*,*,*,−,ヒク,ヒク
日本電信電話 名詞,固有名詞,組織,*,*,*,日本電信電話,ニホンデンシンデンワ,ニホンデンシンデンワ
株式会社 名詞,一般,*,*,*,*,株式会社,カブシキガイシャ,カブシキガイシャ
コミュニケーション 名詞,一般,*,*,*,*,コミュニケーション,コミュニケーション,コミュニケーション
科学 名詞,一般,*,*,*,*,科学,カガク,カガク
基礎 名詞,一般,*,*,*,*,基礎,キソ,キソ
研究所 名詞,一般,*,*,*,*,研究所,ケンキュウジョ,ケンキュージョ
共同 名詞,サ変接続,*,*,*,*,共同,キョウドウ,キョードー
研究 名詞,サ変接続,*,*,*,*,研究,ケンキュウ,ケンキュー
ユニット 名詞,一般,*,*,*,*,ユニット,ユニット,ユニット
プロジェクト 名詞,一般,*,*,*,*,プロジェクト,プロジェクト,プロジェクト
の 助詞,連体化,*,*,*,*,の,ノ,ノ
一環 名詞,一般,*,*,*,*,一環,イッカン,イッカン
として 助詞,格助詞,連語,*,*,*,として,トシテ,トシテ
開発 名詞,サ変接続,*,*,*,*,開発,カイハツ,カイハツ
さ 動詞,自立,*,*,サ変・スル,未然レル接続,する,サ,サ
れ 動詞,接尾,*,*,一段,連用形,れる,レ,レ
た 助動詞,*,*,*,特殊・タ,基本形,た,タ,タ
オープン 名詞,サ変接続,*,*,*,*,オープン,オープン,オープン
ソース 名詞,一般,*,*,*,*,ソース,ソース,ソース
形態素 名詞,一般,*,*,*,*,形態素,ケイタイソ,ケイタイソ
解析 名詞,サ変接続,*,*,*,*,解析,カイセキ,カイセキ
エンジン 名詞,一般,*,*,*,*,エンジン,エンジン,エンジン
です 助動詞,*,*,*,特殊・デス,基本形,です,デス,デス
. 名詞,サ変接続,*,*,*,*,*
言語 名詞,一般,*,*,*,*,言語,ゲンゴ,ゲンゴ
, 名詞,サ変接続,*,*,*,*,*
辞書 名詞,一般,*,*,*,*,辞書,ジショ,ジショ
, 名詞,サ変接続,*,*,*,*,*
コーパス 名詞,一般,*,*,*,*,コーパス,コーパス,コーパス
に 助詞,格助詞,一般,*,*,*,に,ニ,ニ
依存 名詞,サ変接続,*,*,*,*,依存,イゾン,イゾン
し 動詞,自立,*,*,サ変・スル,未然形,する,シ,シ
ない 助動詞,*,*,*,特殊・ナイ,基本形,ない,ナイ,ナイ
汎用 名詞,一般,*,*,*,*,汎用,ハンヨウ,ハンヨー
的 名詞,接尾,形容動詞語幹,*,*,*,的,テキ,テキ
な 助動詞,*,*,*,特殊・ダ,体言接続,だ,ナ,ナ
設計 名詞,サ変接続,*,*,*,*,設計,セッケイ,セッケイ
を 助詞,格助詞,一般,*,*,*,を,ヲ,ヲ
基本 名詞,一般,*,*,*,*,基本,キホン,キホン
方針 名詞,一般,*,*,*,*,方針,ホウシン,ホーシン
と 助詞,格助詞,一般,*,*,*,と,ト,ト
し 動詞,自立,*,*,サ変・スル,連用形,する,シ,シ
て 助詞,接続助詞,*,*,*,*,て,テ,テ
い 動詞,非自立,*,*,一段,連用形,いる,イ,イ
ます 助動詞,*,*,*,特殊・マス,基本形,ます,マス,マス
. 名詞,サ変接続,*,*,*,*,*
EOS
参考
php-mecabインストールで「checking for mecab-config… configure: error: not found」の対応メモ