PHP 自然言語処理

2015年12月25日 at 6:13 PM

さくらインターネットに、php-mecabを導入する方法

1.

> tar -xvf  php-mecab-0.5.0.tgz

> cd php-mecab-0.5.0

> phpize    ← configureファイルを作成する

 

2.さくらコントロールパネルにログインし、「PHPのバージョン選択」から現Ver.を確認。以下ピンク文字の部分に記述

> ./configure –with-mecab=/usr/local/bin/mecab-config –with-php-config=/usr/local/php/5.2/bin/php-config

 

3.Makefileを編集

(修正前)
EXTENSION_DIR = /usr/local/php/5.2/lib/php/extensions/no-debug-non-zts-20060613

(修正後)
EXTENSION_DIR = $(HOME)/local/lib/php/extensions/no-debug-non-zts-20060613

4.
> make install

/bin/sh /home/{ユーザー名}/php-mecab-0.5.0/libtool –mode=compile cc  -I. -I/home/{ユーザー名}/php-mecab-0.5.0 -DPHP_ATOM_INC -I/home/{ユーザー名}/php-mecab-0.5.0/include -I/home/{ユーザー名}/php-mecab-0.5.0/main -I/home/{ユーザー名}/php-mecab-0.5.0 -I/usr/local/php/5.2/include/php -I/usr/local/php/5.2/include/php/main -I/usr/local/php/5.2/include/php/TSRM -I/usr/local/php/5.2/include/php/Zend -I/usr/local/php/5.2/include/php/ext -I/usr/local/php/5.2/include/php/ext/date/lib -I/usr/local/include  -DHAVE_CONFIG_H  -g -O2   -c /home/{ユーザー名}/php-mecab-0.5.0/mecab.c -o mecab.lo
mkdir .libs
 cc -I. -I/home/{ユーザー名}/php-mecab-0.5.0 -DPHP_ATOM_INC -I/home/{ユーザー名}/php-mecab-0.5.0/include -I/home/{ユーザー名}/php-mecab-0.5.0/main -I/home/{ユーザー名}/php-mecab-0.5.0 -I/usr/local/php/5.2/include/php -I/usr/local/php/5.2/include/php/main -I/usr/local/php/5.2/include/php/TSRM -I/usr/local/php/5.2/include/php/Zend -I/usr/local/php/5.2/include/php/ext -I/usr/local/php/5.2/include/php/ext/date/lib -I/usr/local/include -DHAVE_CONFIG_H -g -O2 -c /home/{ユーザー名}/php-mecab-0.5.0/mecab.c  -fPIC -DPIC -o .libs/mecab.o
/bin/sh /home/{ユーザー名}/php-mecab-0.5.0/libtool –mode=link cc -DPHP_ATOM_INC -I/home/{ユーザー名}/php-mecab-0.5.0/include -I/home/{ユーザー名}/php-mecab-0.5.0/main -I/home/{ユーザー名}/php-mecab-0.5.0 -I/usr/local/php/5.2/include/php -I/usr/local/php/5.2/include/php/main -I/usr/local/php/5.2/include/php/TSRM -I/usr/local/php/5.2/include/php/Zend -I/usr/local/php/5.2/include/php/ext -I/usr/local/php/5.2/include/php/ext/date/lib -I/usr/local/include  -DHAVE_CONFIG_H  -g -O2   -o ./mecab.la -export-dynamic -avoid-version -prefer-pic -module -rpath /home/{ユーザー名}/php-mecab-0.5.0/modules  mecab.lo -R/usr/local/lib -L/usr/local/lib -lmecab -lstdc++
cc -shared  .libs/mecab.o  -Wl,–rpath -Wl,/usr/local/lib -Wl,–rpath -Wl,/usr/local/lib -L/usr/local/lib /usr/local/lib/libmecab.so -lstdc++  -Wl,-soname -Wl,mecab.so -o ./.libs/mecab.so
creating ./mecab.la
(cd ./.libs && rm -f mecab.la && ln -s ../mecab.la mecab.la)
/bin/sh /home/{ユーザー名}/php-mecab-0.5.0/libtool –mode=install cp ./mecab.la /home/{ユーザー名}/php-mecab-0.5.0/modules
cp ./.libs/mecab.so /home/{ユーザー名}/php-mecab-0.5.0/modules/mecab.so
cp ./.libs/mecab.lai /home/{ユーザー名}/php-mecab-0.5.0/modules/mecab.la
———————————————————————-
Libraries have been installed in:
   /home/{ユーザー名}/php-mecab-0.5.0/modules

If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR’
flag during linking and do at least one of the following:
   – add LIBDIR to the `LD_LIBRARY_PATH’ environment variable
     during execution
   – add LIBDIR to the `LD_RUN_PATH’ environment variable
     during linking
   – use the `-Wl,–rpath -Wl,LIBDIR’ linker flag

See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
———————————————————————-
Installing shared extensions:     /home/{ユーザー名}/local/lib/php/extensions/no-debug-non-zts-20060613/

5.さくらコントロールパネルにログインし、「PHP設定の編集」からphp.iniに以下を記述追加

extension_dir=”/home/{ユーザー名}/local/php-mecab-0.5.0/modules”
extension=mecab.so

mecab.default_dicdir=”/home/{ユーザー名}/local/lib/mecab/dic/ipadic-utf8″

mecab.default_userdic=”/home/{ユーザー名}/local/lib/mecab/dic/ipadic-utf8/userdic.dic”

3、4行目は、UTF-8版のIPA辞書の導入が成功している場合。その場所を指定

 

 

6.phpinfo()にて、mecabが導入されたことを確認

 

<?php
phpinfo();

?>

 

mecab

Leave a Reply

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>



こちらの関連記事もオススメ!