|
Added line is this color Deleted line is this color
<h1>How to Install MeCab with UTF-8</h1>
<br>
<h2>環境</h2>
Debian Sarge UTF8
<pre>
# apt-get install autoconf automake gcc libc6-dev g++
</pre>
<br>
<h2>ダウンロード</h2>
<p>
http://mecab.sourceforge.jp/src/にアクセス。下記の3つをダウンロード。辞書は11.5MBと少々重たい。</p>
<ul>
<li>mecab-0.93.tar.gz</li>
<li>mecab-ipadic-2.7.0-20060707.tar.gz</li>
<li>mecab-perl-0.93.tar.gz</li>
</ul>
<br>
<h2>解凍する</h2>
<pre>
# 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
</pre>
<p>
※ipadicの解凍時に、所有者の書き換えができない、とエラーがでるがスルー。</p>
<br>
<h2>Mecabのインストール</h2>
<pre>
# cd /data/mecab-0.93
# ./configure --enable-utf8-only
# make
# make install
</pre>
<br>
<h2>mecab-ipadicのインストール</h2>
<pre>
# cd /data/mecab-ipadic-2.7.0-20060707
# ./configure --with-charset=utf8
# make
# make install
</pre>
<h3>ちょっと動作確認。</h3>
<pre>
# echo "この橋渡るべからず" | mecab
この 連体詞,*,*,*,*,*,この,コノ,コノ
橋 名詞,一般,*,*,*,*,橋,ハシ,ハシ
渡る 動詞,自立,*,*,五段・ラ行,基本形,渡る,ワタル,ワタル
べから 助動詞,*,*,*,文語・ベシ,未然形,べし,ベカラ,ベカラ
ず 助動詞,*,*,*,特殊・ヌ,連用ニ接続,ぬ,ズ,ズ
EOS
</pre>
<br>
<h2>mecab-perlのインストール</h2>
<pre>
# cd /data/mecab-perl-0.93
# perl Makefile.PL
# make
# make install
</pre>
<h3>動作確認</h3>
test.pl
<pre>
use utf8;
use MeCab;
$m = new MeCab::Tagger("") || die $!;
print $m->parse("この橋渡るべからず");
</pre>
<p> これは動く。が、</p>
<pre>
$m = new MeCab::Tagger("-Oxml") || die $!;
</pre>
だと、
<pre>
# 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.
</pre>
XML形式なんて知らない、と言われてしまう。<br>
<h2>XML形式の出力フォーマットを入手する</h2>
<p>
0.80にはあるが,最新版にはない。下記はapt-getでmecabとipadicを入れた際に入手したモノ。</p>
<p> 0.80だと"/usr/share/mecab/dic/ipadic/dicrc"に定義がある。</p>
<pre>
; 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
</pre>
<p> これを,"/usr/local/lib/mecab/dic/ipadic/dicrc"に追記。</p>
<h3>念願のXML形式出力</h3>
<pre>
-# perl test.pl<br>
-<sen input="この橋渡るべからず" len="27"><br>
- <token pos="連体詞" base="この" cfrom="" ctype="" read="コノ" pron="コノ">この</token><br>
-
- <token pos="名詞-一般" base="橋" cfrom="" ctype="" read="ハシ" pron="ハシ">橋</token><br>
- <token pos="動詞-自立" base="渡る" cfrom="五段・ラ行" ctype="基本形" read="ワタル" pron="ワタル">渡る</token><br>
- <token pos="助動詞" base="べし" cfrom="文語・ベシ" ctype="未然形" read="ベカラ" pron="ベカラ">べから</token><br>
- <token pos="助動詞" base="ぬ" cfrom="特殊・ヌ" ctype="連用ニ接続" read="ズ" pron="ズ">ず</token><br>
+# 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>
</pre>
<h1>参考URL</h1>
<ol>
<li>http://mecab.sourceforge.jp/</li>
<li>http://www.asahi-net.or.jp/~yw3t-trns/namazu/mecab/index.htm</li>
<li>http://www.kaede-software.com/2006/02/post_393.html</li>
<li>http://www.machu.jp/diary/20050414.html</li>
</ol>
|