Ruby で MeCab を使ってみる
前準備
- 更新可能な全パッケージを更新する操作を行っておく.
次のコマンドを実行.
sudo apt -y update sudo apt-get upgrade
* Fedora の場合の操作手順(例)
yum check-update yum update
* mecab のインストールo
次のコマンドを実行.
- ubutnu のパッケージを使い mecab をインストール。ついでに chasen, namazu もインストールしている
sudo apt -y update sudo apt -y install chasen sudo apt -y install libchasen-dev sudo apt -y install chasen-dictutils sudo apt -y install libtext-chasen-perl sudo apt -y install naist-jdic-utf8 sudo apt -y install mecab sudo apt -y install mecab-utils sudo apt -y install mecab-naist-jdic sudo apt -y install libmecab-dev sudo apt -y install libmecab-ruby sudo apt -y install namazu2 sudo apt -y install namazu2-index-tools sudo apt -y install libnmz7-dev
次のコマンドを実行.(例)(ソースパッケージを用いてビルドとインストールを行う場合)
mkdir /tmp/mecab cd /tmp/mecab sudo apt-get source mecab sudo apt-get -yV build-dep mecab cd mecab-0.97 sudo dpkg-buildpackage -rfakeroot cd .. sudo dpkg -i *.deb
mecab-ruby のインストール
cd /tmp
wget http://sourceforge.net/projects/mecab/files/mecab-ruby/0.98/mecab-ruby-0.98.tar.gz
tar -xvzof mecab-ruby-0.98.tar.gz
cd mecab-ruby-0.98
ruby extconf.rb
make
sudo make install
◆ Fedora の場合のインストール手順(例)
gem ではインストールできないみたいなので,yum を使ってインストールする.
- 「yum install *mecab」の実行
yum install *mecab
- 「yum install mecab*」の実行
yum install mecab*
Windows の Cygwin の場合のインストール手順(例)
Mecab のインストール
- libiconv, libtool のインストール
- Mecab の入手
cd /tmp wget http://sourceforge.net/projects/mecab/files/mecab/0.98/mecab-0.98.tar.gz tar -xvzof mecab-0.98.tar.gz cd mecab-0.98
- ソースコードの調整
- src/common.h
「#include<sstream>」を末尾に移動
- configure.in AC_CHECK_LIB(iconv,libiconv_open) を AC_CHECK_LIB(iconv,iconv_open) に書き換える
- src/common.h
- ./configure --with-charset=utf-8
- make
- sudo make install
ipadic のインストール
cd /tmp wget http://sourceforge.net/projects/mecab/files/mecab-ipadic/2.7.0-20070801/mecab-iadic-2.7.0-20070801.tar.gz tar -xvzof mecab-ipadic-2.7.0-20070801.tar.gz cd mecab-ipadic-2.7.0-20070801 ./configure --with-charset=utf8 make sudo make install
MeCab Ruby のインストール
cd /tmp wget http://sourceforge.net/projects/mecab/files/mecab-ruby/0.98/mecab-ruby-0.98.tar.gz tar -xvzof mecab-ruby-0.98.tar.gz cd mecab-ruby-0.98 ruby extconf.rb ここでできた Makefile を書き換える === ldflags = -L. -L/usr/local/lib LIBS = $(LIBRUBYARG_SHARED) -lstdc++ -ldl -lcrypt -lmecab === make sudo make install
実行例
起動チェック
irb を使用."I have a pen." という英文を解析してみる.これは起動チェックを兼ねる.
irb require 'MeCab' c = MeCab::Tagger.new() parsed = c.parse("I have a pen")
実行結果の例
Linux の irb を使用.ターミナルの文字コードは UTF-8 に設定
UTF-8 形式日本語ファイルの解析
今度も irb を使用.ファイル hoge2.txt の中身を解析してみる.ファイルの文字コードは UTF-8 にしておく.
irb require 'pp' require 'MeCab' c = MeCab::Tagger.new() File.open("hoge2.txt", "r") do |f| parsed = c.parse(f.read) print parsed end
実行結果の例
Linux の irb を使用.ターミナルの文字コードは UTF-8 に設定