CentOSにmecabをインストールしました。


CentOS7でmecabコマンドを使えるようにしました。

環境

CentOS7にmecabコマンドを入れました。

cat /etc/redhat-release 
CentOS Linux release 7.2.1511 (Core) 

インストール方法はUnixへのインストール方法を参考にしています。

mecabをインストール

ソースを取得

まずはソースを取得します。

wget https://drive.google.com/uc?export=download&id=0B4y35FiV1wh7cENtOXlicTFaRUE

--2016-11-20 11:09:22--  https://drive.google.com/uc?export=download
drive.google.com (drive.google.com) をDNSに問いあわせています... 172.217.25.78, 2404:6800:4004:818::200e
drive.google.com (drive.google.com)|172.217.25.78|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 400 Bad Request
2016-11-20 11:09:22 エラー 400: Bad Request。

あれ?wgetできません。400: Bad Requestと言われました。

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

'で囲うと今度はうまくいきました。-Oを付けないとファイル名がおかしくなったのでファイル名を指定しました。
mecab-0.996.tar.gzというファイルが存在しています。

解凍とmake

ダウンロードしたmecab-0.996.tar.gzを解凍しています。

解凍
tar zxfv mecab-0.996.tar.gz

mecab-0.996というディレクトリに移動して、makeします。

make
cd mecab-0.996
./configure
make
make check
sudo make install

mecabの辞書がないと言われる

mecabコマンドを実行します。

mecabコマンドのテスト
mecab
param.cpp(69) [ifs] no such file or directory: /usr/local/lib/mecab/dic/ipadic/dicrc

no such file or directoryと言われます。これはmecabの辞書が無いためのエラーらしいです。

mecabの辞書を取得

mecabの辞書を取得します。

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

解凍とmake

解凍
tar zxfv mecab-ipadic-2.7.0-20070801.tar.gz

cd mecab-ipadic-2.7.0-20070801
./configure --with-charset=utf8
sudo make install

ここで./configureをするときにutf8をつけるのがポイントぽいです。おそらくutf8をつけないと以下のように文字化けしました。

文字化けするmecab
mecab
すもももももももものうち
すもももももももものうち    ????,????,*,*,*,*,*
EOS

文字化けしています。ハマりぽいんとですね。
これでmecabコマンドが使えるようになります。

mecabを試す

mecabを使ったことないのでいくつか試してみました。

mecabを試す1
mecab
水瀬伊織、15歳で~っす♪伊織、頑張っちゃいますね♪
水 名詞,一般,*,*,*,*,水,ミズ,ミズ
瀬 名詞,固有名詞,人名,姓,*,*,瀬,セラ,セラ
伊織  名詞,固有名詞,人名,名,*,*,伊織,イオリ,イオリ
、 記号,読点,*,*,*,*,、,、,、
1 名詞,数,*,*,*,*,1,イチ,イチ
5 名詞,数,*,*,*,*,5,ゴ,ゴ
歳 名詞,接尾,助数詞,*,*,*,歳,サイ,サイ
で 助詞,格助詞,一般,*,*,*,で,デ,デ
~ 名詞,サ変接続,*,*,*,*,*
っす  助動詞,*,*,*,特殊・デス,基本形,っす,ッス,ッス
♪ 名詞,サ変接続,*,*,*,*,*
伊織  名詞,固有名詞,人名,姓,*,*,伊織,イオリ,イオリ
、 記号,読点,*,*,*,*,、,、,、
頑張っ   動詞,自立,*,*,五段・ラ行,連用タ接続,頑張る,ガンバッ,ガンバッ
ちゃ  助詞,接続助詞,*,*,*,*,ちゃ,チャ,チャ
い 動詞,非自立,*,*,一段,連用形,いる,イ,イ
ます  助動詞,*,*,*,特殊・マス,基本形,ます,マス,マス
ね 助詞,終助詞,*,*,*,*,ね,ネ,ネ
♪ 名詞,サ変接続,*,*,*,*,*
EOS
mecabを試す2
mecab
みなみ、決めますっ!
みなみ   名詞,一般,*,*,*,*,みなみ,ミナミ,ミナミ
、 記号,読点,*,*,*,*,、,、,、
決め  動詞,自立,*,*,一段,連用形,決める,キメ,キメ
ます  助動詞,*,*,*,特殊・マス,基本形,ます,マス,マス
っ 動詞,非自立,*,*,五段・カ行促音便,連用タ接続,く,ッ,ッ
!   名詞,サ変接続,*,*,*,*,*
EOS
mecabを試す3
mecab
お兄ちゃんおしっこ
お 接頭詞,名詞接続,*,*,*,*,お,オ,オ
兄ちゃん    名詞,一般,*,*,*,*,兄ちゃん,ニイチャン,ニーチャン
おしっこ    名詞,サ変接続,*,*,*,*,おしっこ,オシッコ,オシッコ
EOS

こいつはすげーぜ(☝ ՞ਊ ՞)

参考

http://taku910.github.io/mecab/#install-unix
https://blog.apar.jp/php/2642/