mecab のインストール
(Mac OSX & Cygwin on Windows)

mecab をインストールします。


  1. まえがき
  2. インストール
  3. 設定
  4. 使い方

関連するページはこちら、

MacOSX & Cygwin on Windows のソフトの事

メール関係はこちら


1. まえがき

分かち書きに、mecab を使っています。Homepage によれば、

MeCab は 京都大学情報学研究科−日本電信電話株式会社コミュニケーション科学基礎研究所共同研究ユニットプロジェクトを通じて開発されたオープンソース形態素解析エンジンです. 言語, 辞書,コーパスに依存しない汎用的な設計を基本方針としています. パラメータの推定に Conditional Random Fields (CRF) を用いており, ChaSenが採用している隠れマルコフモデルに比べ性能が向上しています。また、平均的に ChaSen, Juman, KAKASIより高速に動作します. ちなみに和布蕪(めかぶ)は, 作者の好物です.

との事です。分かち書きは、Mecab の機能の、極一部です。


2. インストール

2.1. References

Homepage
http://mecab.sourceforge.jp/
Source
http://mecab.sourceforge.jp/src/

2.2. mecab 本体の make & install for OSX (Leopard)

解凍して、

Hena Hena Nikki を参考に、configure スクリプトを編集。

ここで vim で開いた configure スクリプトの 23885 行目にある
ac_cv_lib_iconv_iconv_open=no を ac_cv_lib_iconv_iconv_open=yes に変更
する。

後は、何時もの樣に、

$ ./configure CFLAGS="-isystem /usr/local/include" LDFLAGS=-L/usr/local/lib --with-libiconv-prefix=/usr/local
$ make
$ make check
$ sudo make install

するだけ。Leopard では、—disable-shared しなくても大丈夫だった。

version 0.96 では、make check で、こんなエラーが出ます。

........
337c337
< プロフィール	名詞,一般,*,*,*,*,プロフィール,プロフィール,プロフィール
---
> プロフィール	名詞,一般,*,*,*,*,*
368c368
< コール	名詞,一般,*,*,*,*,コール,コール,コール
---
> コール	名詞,一般,*,*,*,*,*
438c438
< カテゴリ	名詞,一般,*,*,*,*,カテゴリ,カテゴリ,カテゴリ
---
> カテゴリ	名詞,一般,*,*,*,*,*
443c443
< シリーズ	名詞,一般,*,*,*,*,シリーズ,シリーズ,シリーズ
---
> シリーズ	名詞,一般,*,*,*,*,*
runtests faild in
FAIL: run-cost-train.sh
===================
1 of 3 tests failed
===================

でも http://lists.sourceforge.jp/mailman/archives/mecab-users/2007-March/000242.html に拠れば、深刻ではなさそう。

因に、依存関係は、下のとおり。

$ otool -L /usr/local/bin/mecab
/usr/local/bin/mecab:
	/usr/local/lib/libmecab.1.dylib (compatibility version 2.0.0, current version 2.0.0)
	/usr/local/lib/libiconv.2.dylib (compatibility version 7.0.0, current version 7.0.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 111.0.0)
	/usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.4.0)
	/usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)

又、2007-11-10 現在、バージョンは

$ mecab --version
mecab of 0.96


2.3. mecab 本体の make & install for Cygwin

解凍して、

Hena Hena Nikki を参考に、configure スクリプトを編集。

ここで vim で開いた configure スクリプトの 23885 行目にある
ac_cv_lib_iconv_iconv_open=no を ac_cv_lib_iconv_iconv_open=yes に変更
する。

version 0.95 からは、common.h を次のように変更する必用があります。
version 0.96 では、パッチを取り込んで頂きました。

--- mecab-0.95/src/common.h	2007-03-11 22:34:16.000000000 +0900
+++ common.h	2007-05-15 12:50:06.000000000 +0900
@@ -22,7 +22,7 @@
 #endif

 // tricky macro for MSVC
-#ifdef _MSC_VER
+#if defined(_MSC_VER) || defined(__CYGWIN__)
 #define for if (0); else for
 /* why windows.h define such a generic macro */
 #undef max

後は、何時もの樣に、

$ ./configure --disable-shared
$ make
$ make check
$ sudo make install

するだけ。

version 0.95 から、こんなエラーが出るようになった。

..........
done!
              precision          recall         F
LEVEL 0:    12.0181(53/441) 11.0647(53/479) 11.5217
LEVEL 1:    10.4308(46/441) 9.6033(46/479) 10.0000
LEVEL 2:    9.9773(44/441) 9.1858(44/479) 9.5652
LEVEL 4:    9.9773(44/441) 9.1858(44/479) 9.5652
452c452
< 使わ	動詞,自立,*,*,五段・ワ行ウ音便,未然形,使う,ツカワ,ツカワ
---
> 使わ	動詞,自立,*,*,五段・ワ行促音便,未然形,使う,ツカワ,ツカワ
runtests faild in
FAIL: run-cost-train.sh
===================
1 of 3 tests failed
===================

でも http://lists.sourceforge.jp/mailman/archives/mecab-users/2007-March/000242.html に拠れば、深刻ではなさそう。


2.4. mecab-ipadic の make & install

本体と同じ所から、ソースを頂だいて、

$ ./configure
$ make
$ sudo make install

で、終わり。


2.5. mecab 本体の make & install for OSX (Tiger)

10.4 では、こんな感じでした。

$ ./configure LDFLAGS=-L/usr/local/lib --disable-shared --with-libiconv-prefix=/usr/local
$ make
$ make check
$ sudo make install

version 0.95 から、こんなエラーが出るようになった。

........
precision          recall         F
LEVEL 0:    12.0181(53/441) 11.0647(53/479) 11.5217
LEVEL 1:    10.4308(46/441) 9.6033(46/479) 10.0000
LEVEL 2:    9.9773(44/441) 9.1858(44/479) 9.5652
LEVEL 4:    9.9773(44/441) 9.1858(44/479) 9.5652
318c318
< 問わ	動詞,自立,*,*,五段・ワ行ウ音便,未然形,問う,トワ,トワ
---
> 問わ	動詞,自立,*,*,五段・ワ行促音便,未然形,問う,トワ,トワ
329,330c329,330
< の	助詞,格助詞,一般,*,*,*,の,ノ,ノ
< の	助詞,格助詞,一般,*,*,*,の,ノ,ノ
---
> の	助詞,連体化,*,*,*,*,の,ノ,ノ
> の	助詞,連体化,*,*,*,*,の,ノ,ノ
runtests faild in
FAIL: run-cost-train.sh
===================
1 of 3 tests failed
===================

依存関係は、下のとおり。

$ otool -L /usr/local/bin/mecab
/usr/local/bin/mecab:
	/usr/local/lib/libiconv.2.dylib (compatibility version 7.0.0, current version 7.0.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 88.5.1)
	/usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.4.0)
	/usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)

又、2007-06-18 現在、バージョンは

$ mecab --version
mecab of 0.96


3. 設定

特に無し。


4.使い方

manpage から

SYNOPSIS

mecab [options] files

DESCRIPTION

MeCab: Yet Another Part-of-Speech and Morphological Analyzer

COPYRIGHT

Copyright ,A) 2001-2006 Taku Kudo
Copyright ,A) 2004-2006 Nippon Telegraph and Telephone Corporation

-r, --rcfile=FILE
    use FILE as resource file
-d, --dicdir=DIR
    set DIR as a system dicdir
-u, --userdic=FILE
    use FILE as a user dictionary
-l, --lattice-level=INT
    lattice information level (default 0)
-a, --all-morphs
    output all morphs (default false)
-O, --output-format-type=TYPE
    set output format type (wakati,none,...)
-p, --partial
    partial parsing mode
-F, --node-format=STR
    use STR as the user-defined node format
-U, --unk-format=STR
    use STR as the user-defined unk format
-B, --bos-format=STR
    use STR as the user-defined bos format
-E, --eos-format=STR
    use STR as the user-defined eos format
-b, --input-buffer-size=INT
    set input buffer size (default BUF_SIZE)
-C, --allocate-sentence
    allocate new memory for input sentence
-N, --nbest=INT
    output N best results (default 1)
-t, --theta=FLOAT
    set temparature parameter theta (default 0.75)
-o, --output=FILE
    set the output file name
-v, --version
    show the version and exit.
-h, --help
    show this help and exit.