MecabをCentOSにインストールして、PHPからも使えるようにする

mecabをCentOSにインストールして、PHPからも使えるようにする CentOS6

mecabをCentOSにインストールして、PHPからも使えるようにする

mecabは形態素解析を行ってくれるソフトウェアです。これをCentOSにインストールする手順です。

mecabは本体と辞書の2つの要素から成り立ってます。こちらの記事では、最新の言葉が利用できる強力なユーザ辞書【mecab-ipadic-neologd】を利用する方法を紹介しています。併せてインストールすると良いと思います。

ついでに、mecab_split関数をPHPで使えるようにもしてみます。

■Mecab本体のインストール

○ダウンロード

以下のコマンドでダウンロードします。例ではwgetを利用していますが、別にダウンロードできればなんでも構いません。

wget -O mecab-0.996.tar.gz "https://drive.google.com/uc?export=download&id=0B4y35FiV1wh7cENtOXlicTFaRUE"

○展開する

以下のコマンドで展開をします。展開するとmecab-0.996というディレクトリができます。

tar -zxvf mecab-0.996.tar.gz

○展開したディレクトリに移動する

cdコマンドで展開したディレクトリへ移動します。

cd mecab-0.996

○コンパイルとインストール

普通のconfigureからmake make install の流れでインストールします。

./configure
make
su
make install

これで、一旦本体のインストールが完了します。

 

■辞書のインストール

○辞書のダウンロード

以下のコマンドでダウンロードを行います。例ではwgetを利用していますが、ダウンロードできれば何でも構いません。

wget -O mecab-ipadic-2.7.0-20070801.tar.gz "https://drive.google.com/uc?export=download&id=0B4y35FiV1wh7MWVlSDBCSXZMTXM"

 

○展開する

以下のコマンドで展開をします。展開するとmecab-ipadic-2.7.0-20070801というディレクトリができます。

tar -zxvf mecab-ipadic-2.7.0-20070801.tar.gz

○展開したディレクトリに移動する

cdコマンドで展開したディレクトリへ移動します。

cd mecab-ipadic-2.7.0-20070801

○コンパイルとインストール

あとは普通にconfigureからmake 、make installを行います。configureで文字コードを指定できます。ここで指定を間違えると文字化けの原因となります。

./configure --with-charset=utf8
make
su
make install

これで、コマンドライン上からmecabコマンドが使えるようになります。

■PHPで使えるようにする

さらに、PHPのスクリプト上からmecab_split関数を使えるようにします。これは、mecabをPHP上から使えるようにする関数です。Peclを使ってインストールします。

○g++をインストール

mecab_splitをコンパイルするために、g++コンパイラが必要です。以下のコマンドでインストールします

yum install gcc-c++

○mecab_splitをインストール

以下のコマンドでインストールします。インストールが完了するとmecab.soが出来上がります。

pear channel-discover pecl.opendogs.org
pear remote-list -c opendogs
sudo pear install opendogs/mecab-beta

○PHPに認識させる

mecab.soをphpの設定を変更して読み込みます。apacheに認識させるには、apacheを再起動します。

vi /etc/php.d/mecab.ini
extension=mecab.so

これで、php上でmecabが利用できるようになります。形態素解析が利用できるようになると、文章を取り扱う系のプログラムが実装しやすくなります。参考にしてみてください。

コメント

  1. Ankit Agrawal より:

    Thank you man!
    You saved me a day 🙂