LoginSignup
0
1

More than 5 years have passed since last update.

php-mecabがpearから入らなかったから、ソースからコンパイルした話

Last updated at Posted at 2015-06-15

調べても同じエラーの人が出てこなかったので、
この記事が参考になれば。

centos6.6で、phpは5.5を使っています。

cat /etc/redhat-release
CentOS release 6.6 (Final)
php -v
PHP 5.5.25 (cli) (built: May 14 2015 10:02:12) 
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies
    with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2015, by Zend Technologies
    with Xdebug v2.3.2, Copyright (c) 2002-2015, by Derick Rethans
    with Suhosin v0.9.37.1, Copyright (c) 2007-2014, by SektionEins GmbH

mecabはインストール済みとします。

まずはpearでやってみたわけです。

$ pear channel-discover pecl.opendogs.org

$ pear remote-list -c opendogs
Channel opendogs Available packages:
====================================
Package      Version
gdextra      -n/a-
mecab        -n/a-
qr           -n/a-
tokyocabinet -n/a-
unichar      -n/a-

$ pear install opendogs/mecab-beta
downloading mecab-0.5.0.tgz ...
Starting to download mecab-0.5.0.tgz (51,723 bytes)
.............done: 51,723 bytes
could not extract the package.xml file from "/tmp/pear/download/mecab-0.5.0.tgz"
Download of "opendogs/mecab" succeeded, but it is not a valid package archive
Error: cannot download "opendogs/mecab"
Download failed
install failed

というわけで、エラーが発生しました。

諦めてソースコードからいれます。

$ wget https://github.com/rsky/php-mecab/archive/master.zip
$ unzip master.zip 
$ cd php-mecab-master/mecab/
$ ./configure --with-mecab=/usr/local/bin/mecab-config
    #これはmecabのインストール環境によって変えてください。
$ make
$ make install
$ ls /usr/lib64/php/modules/mecab.so
/usr/lib64/php/modules/mecab.so

入りました。
続いて、PHPのエクステンションを加えます。

$ vi /etc/php.d/mecab.ini
; Enable mecab extension module
extension=mecab.so

それで、apacheを再起動

$ /etc/init.d/httpd restart

phpinfoを作ってみましょう

<?php

  phpinfo();

いました!
スクリーンショット 2015-06-15 16.42.29.png

そしてお約束。。。

<?php

    $meCab = new MeCab_Tagger();
    echo nl2br($meCab->parse("すもももももももものうち"));
すもも   名詞,一般,*,*,*,*,すもも,スモモ,スモモ
も 助詞,係助詞,*,*,*,*,も,モ,モ
もも  名詞,一般,*,*,*,*,もも,モモ,モモ
も 助詞,係助詞,*,*,*,*,も,モ,モ
もも  名詞,一般,*,*,*,*,もも,モモ,モモ
の 助詞,連体化,*,*,*,*,の,ノ,ノ
うち  名詞,非自立,副詞可能,*,*,*,うち,ウチ,ウチ
EOS

ご苦労様でした。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1