CentOSにMeCabをインストールして使う方法。
CentOS環境で形態素解析をしたいということで、MeCabをRubyで使う。
やり方は、ほとんど下記投稿に書いてあることの踏襲。
http://qiita.com/xkumiyu/items/50e449235985ca1b0271
だが、いくつか止まってしまうポイントがあったので補足。
Groongaレポジトリ追加
$ sudo rpm -ivh http://packages.groonga.org/centos/groonga-release-1.1.0-1.noarch.rpm
mecab本体と辞書ファイルをインストール
$ sudo yum install mecab mecab-ipadic
$ sudo yum install mecab-devel
確認
$ mecab
すもももももももものうち
すもも 名詞,一般,*,*,*,*,すもも,スモモ,スモモ
も 助詞,係助詞,*,*,*,*,も,モ,モ
もも 名詞,一般,*,*,*,*,もも,モモ,モモ
も 助詞,係助詞,*,*,*,*,も,モ,モ
もも 名詞,一般,*,*,*,*,もも,モモ,モモ
の 助詞,連体化,*,*,*,*,の,ノ,ノ
うち 名詞,非自立,副詞可能,*,*,*,うち,ウチ,ウチ
EOS
nattoをインストール
$ gem install natto
$ gem install mecab #不要かも
libmecab.soの場所を探す
$ sudo find / -name libmecab.so*
/vagrant/mecab-0.996/src/.libs/libmecab.so
/vagrant/mecab-0.996/src/.libs/libmecab.so.2
/vagrant/mecab-0.996/src/.libs/libmecab.so.2.0.0
libmecab.soにPATHを通す
$ echo 'export MECAB_PATH=/vagrant/mecab-0.996/src/.libs/libmecab.so' >> ~/.bash_profile #so.2に通すとうまくいかなかった
$ source ~/.bash_profile
mecabとmecab辞書の文字コードをshift-jisからutf-8に変更
$ sudo ./configure --with-charset=utf8
rubyファイルを書いて実行
mecab.rb
require 'natto'
text = 'すもももももももものうち'
nm = Natto::MeCab.new
nm.parse(text) do |n|
puts "#{n.surface}\t#{n.feature}"
end
$ ruby mecab.rb
すもも 名詞,一般,*,*,*,*,すもも,スモモ,スモモ
も 助詞,係助詞,*,*,*,*,も,モ,モ
もも 名詞,一般,*,*,*,*,もも,モモ,モモ
も 助詞,係助詞,*,*,*,*,も,モ,モ
もも 名詞,一般,*,*,*,*,もも,モモ,モモ
の 助詞,連体化,*,*,*,*,の,ノ,ノ
うち 名詞,非自立,副詞可能,*,*,*,うち,ウチ,ウチ
BOS/EOS,*,*,*,*,*,*,*,*
という感じでした。