@WikiNewPageEditViewToolsHelp
Create New Page Create New Page from Copy
Create your new wiki
Edit this page Copy from this page Rename
Attach (Upload) File
Edit Menu
Newest Change History Referer Trackback
Page List Tag Cloud RSS1.0 RSS2.0
Search
@Wiki Guide
FAQ/about @wiki FAQ/about Editting FAQ/about Register
Update Infomation Release Plan

How to Install MeCab with UTF-8


環境

Debian Sarge UTF8
# apt-get install autoconf automake gcc libc6-dev g++

ダウンロード

http://mecab.sourceforge.jp/src/にアクセス。下記の3つをダウンロード。辞書は11.5MBと少々重たい。

  • mecab-0.93.tar.gz
  • mecab-ipadic-2.7.0-20060707.tar.gz
  • mecab-perl-0.93.tar.gz

解凍する

# tar -zxvf mecab-0.93.tar.gz
# tar -zxvf mecab-ipadic-2.7.0-20060707.tar.gz
# tar -zxvf mecab-perl-0.93.tar.gz

※ipadicの解凍時に、所有者の書き換えができない、とエラーがでるがスルー。


Mecabのインストール

# cd /data/mecab-0.93
# ./configure --enable-utf8-only
# make
# make install

mecab-ipadicのインストール

# cd /data/mecab-ipadic-2.7.0-20060707
# ./configure --with-charset=utf8
# make
# make install

ちょっと動作確認。

# echo "この橋渡るべからず" | mecab
この 連体詞,*,*,*,*,*,この,コノ,コノ
橋 名詞,一般,*,*,*,*,橋,ハシ,ハシ
渡る 動詞,自立,*,*,五段・ラ行,基本形,渡る,ワタル,ワタル
べから 助動詞,*,*,*,文語・ベシ,未然形,べし,ベカラ,ベカラ
ず 助動詞,*,*,*,特殊・ヌ,連用ニ接続,ぬ,ズ,ズ
EOS

mecab-perlのインストール

# cd /data/mecab-perl-0.93
# perl Makefile.PL
# make
# make install

動作確認

test.pl
use utf8;
use MeCab;
$m = new MeCab::Tagger("") || die $!;
print $m->parse("この橋渡るべからず");

 これは動く。が、

$m = new MeCab::Tagger("-Oxml") || die $!;
 だと、
# perl test.pl
RuntimeError tagger.cpp(146) [writer_.open(param)] writer.cpp(62)
[! std::string(param.getProfileString(nfk.c_str())).empty()] unknown format type [xml]
...propagated at est.pl line 3.
 XML形式なんて知らない、と言われてしまう。

XML形式の出力フォーマットを入手する

 0.80にはあるが,最新版にはない。下記はapt-getでmecabとipadicを入れた際に入手したモノ。

 0.80だと"/usr/share/mecab/dic/ipadic/dicrc"に定義がある。

; XML
bos-format-xml  = <sen input="%S" len="%L">\n
node-format-xml = \s\s<token pos="%F-[0,1,2,3]" base="%f[6]" cfrom="%f[4]" ctype="%f[5]" read="%f[7]" pron="%f[8]">%m</token>\n
eos-format-xml  = </sen>\n

 これを,"/usr/local/lib/mecab/dic/ipadic/dicrc"に追記。

念願のXML形式出力

# perl test.pl
<sen input="この橋渡るべからず" len="27">
 <token pos="連体詞" base="この" cfrom="" ctype="" read="コノ" pron="コノ">この</token>
 <token pos="名詞-一般" base="橋" cfrom="" ctype="" read="ハシ" pron="ハシ">橋</token>
 <token pos="動詞-自立" base="渡る" cfrom="五段・ラ行" ctype="基本形" read="ワタル" pron="ワタル">渡る</token>
 <token pos="助動詞" base="べし" cfrom="文語・ベシ" ctype="未然形" read="ベカラ" pron="ベカラ">べから</token>
 <token pos="助動詞" base="ぬ" cfrom="特殊・ヌ" ctype="連用ニ接続" read="ズ" pron="ズ">ず</token>
</sen>

参考URL

  1. http://mecab.sourceforge.jp/
  2. http://www.asahi-net.or.jp/~yw3t-trns/namazu/mecab/index.htm
  3. http://www.kaede-software.com/2006/02/post_393.html
  4. http://www.machu.jp/diary/20050414.html