MeCab および MeCab-Ruby をインストールする

このページの記述は、次のページを参考にしました。

RとLinuxと...

http://cms.ias.tokushima-u.ac.jp/index.php?RMeCab

ちなみに、ここでは、OS 標準の Ruby からアクセスしたり、RubyCocoa で作成したプログラムからも使えることを前提にインストールしますが、 もし、直接 Ruby を使って MeCab を使いたいだけなら、MacPorts を使ってパッケージをインストールする方が楽です。 その方法は、こちらから。 この方法で MeCab-Ruby をインストールしても、Ruby から MeCab が使えるようになります。

文字ばかりだと、ターミナルを扱った事がない人にはちょっとわかりづらいかと思い、スクリーンショットいっぱいのページも作りました。

ここでの方法は、Leopard と Snow Leopard の両方で試してあります。

始める前に、Xcode を Leopard もしくは Snow Leopard のインストール DVD からインストールします。(もしくは、Apple Developper Connection に登録して、最新版をダウンロードします)。すでにインストールしてある場合は飛ばしてください。Xcode 4.3 以降の場合は、Preferences -> Downloads -> Components で Command Line Tools をインストールする必要があります。

まず、Leopard/Snow Leopard インストール DVD(もしくは本体付属のインストールディスク)を Mac に入れて、ウィンドウに Optional Installs フォルダがあるので、そのまた中にある Xcode Tools フォルダに入っている XcodeTools.mpkg をダブルクリックしてインストールしてください。

次の 3 つはどれも同じだと思いますが、念のため、それぞれの OS で作ったものを置いておきます。

システム必要条件:Snow Leopard (OS X 10.6) もしくは Lion (OS X 10.7) がインストールされた 64-bit Mac (Core 2 Duo 以降)

Mountain Lion 用にも、インストーラーを作りました。インストールされる MeCab のバージョンは、0.996 です。

システム必要条件:Mountain Lion (OS X 10.8) がインストールされた Mac

システム必要条件:Yosemite (OS X 10.10) 以降がインストールされた Mac (El Capitan も含む)

文字コードは UTF-8 で IPA 辞書がインストールされます。

Mecab と Mecab-Ruby の両方をインストールすると、CasualMecab を使って GUI で簡単な形態素分析(MeCab の基本出力)ができます。複数のファイルを扱う簡単なバッチ処理もできます。もし使っていただけたなら、ご意見ご感想をいただけるとうれしいです。

このインストーラーを使えば、以下の作業は必要なくなります。

MeCab 関連のファイルをダウンロードする

http://code.google.com/p/mecab/downloads/list

に行って、次のファイルをダウンロードします。次のファイル名をクリックすると、それぞれのダウンロードページが開きます。

mecab-0.996.tar.gz

mecab-ipadic-2.7.0-20070801.tar.gz

mecab-ruby-0.996.tar.gz

それぞれ、ページのファイル名をクリックするとダウンロードが始まります。

もし、Safari でダウンロード後、"安全な"ファイルを開くにチェックが入っていると勝手に展開して .tar ファイルにしてしまうので、この後の作業がちょっと違ってきます(.tar ファイルをダブルクリックして解凍し、その部分のステップを飛ばします)。

ダウンロードしたら、OS がインストールしてあるディスクに適当なフォルダを作って、この3つを入れておくと管理するのが楽だと思います。(ここの例では、ダウンロードフォルダに mecab というフォルダを作りそこで作業をしています。)OS が入っているものと別のパーティションや、外付けディスクなどにフォルダを作って作業をすると、インストール時にエラーが出ます。まあ、自分のホームフォルダの書類フォルダやダウンロードフォルダ、デスクトップなどで作業をするのをお勧めします。

MeCab をインストール

ここでは、CasualConc でも(将来的に)使えるように、文字コードを UTF-8 に設定してあります。(Mac OS X の標準文字コードだから、というのもあります。)

まず、ターミナル.app を起動して、(ターミナルは、アプリケーション -> ユーティリティフォルダにあります)

$ cd (directory)

これは、cd と入力して(cd の後に半角スペースを入れる)、上で作った、mecab-0.97.tar.gz の入っているフォルダをドラッグアンドドロップすればいいです。($ は表示されているので、入力しない)入力したら、Return キーを押して実行すると、そのフォルダに移動できます。移動できていれば、フォルダ名が (user name)$ の前に表示されているはずです。例えば、コンピュータの名前が My iMac で、ユーザ名が Me、それで、ダウンロードフォルダに mecab というフォルダを作ったとすると、

My-iMac:~ me$

と表示されているので、cd と半角スペースを入力して、mecab フォルダをターミナルのウィンドウにドラッグアンドドロップすると、

My-iMac:~ me$ cd /Users/me/Downloads/mecab

となって、ここで、Return を押して実行すると、

My-iMac:mecab me$

と表示されます(大文字小文字は多少違うかも)。そしたら、次のコマンドを、一行ずつ入力して実行していきます。ダウンロードしたバージョンが新し くなっている場合は、それにあわせてファイル名を変更してください。同じバージョンなら、このページのコマンドを、一行ずつコピー&ペーストして入力して いけばいいはずです。($ は入力しない)

$ tar zxvf mecab-0.996.tar.gz

(Safari で勝手に .tar に展開されてしまった場合は、mecab-0.996.tar ファイルをダブルクリックして開いてください(ターミナルからの開き方がよくわからないので)。)

次に、mecab-0.996 フォルダに移動して、インストールします。

$ cd mecab-0.996

$ ./configure --with-charset=utf-8;make;sudo make install

make のプロセスにはしばらくかかります。sudo make install を実行すると、パスワードを要求されるので、自分のパスワードを入れてください。

これで MeCab がインストールできました。ちなみに、OS がインストールされているドライブ以外でこの作業をすると、エラーが出ます。

MeCab の辞書 (mecab-ipadic) をインストール

次に MeCab の辞書をインストールします(UTF-8 でインストールします)。

まず、最初に作ったフォルダに戻ります( (directory) は最初に作ったフォルダのディレクトリ)。

$ cd (directory)

もしくは

$ cd ..

でもいけるはずです。この cd .. は、今いるフォルダの階層から、一つ上の階層に移動するコマンドです。上の処理で、最初のフォルダから、その中にある、 mecab-0.994 というフォルダに入ったので、一つ上に戻ると最初のフォルダに戻ります。わからなければ、最初と同じようにフォルダをドラッグアンドドロップして移動し てください。

つぎに、上と同じように、辞書の tar.gz ファイルを解凍します。

$ tar zxf mecab-ipadic-2.7.0-20070801.tar.gz

解凍したら、mecab-ipadic-2.7.0-20070801 フォルダに移動してインストールします。上で sudo make install を実行しているので、パスワードは聞かれないはずです。

$ cd mecab-ipadic-2.7.0-20070801

$ ./configure --with-charset=utf-8;make;sudo make install

CasualMecab を使う場合は、ここまでで動作します。さらに Ruby から Mecab を利用したい場合は、MeCab-Ruby をインストールしてください。

MeCab-Ruby をインストールする

また、最初に作ったフォルダに戻ります (directory) は最初に作ったフォルダのディレクトリ)。

$ cd (directory)

もしくは

$ cd ..

元の mecab フォルダに戻ったら、次のコマンドを実行します。

$ tar zxf mecab-ruby-0.996.tar.gz

$ cd mecab-ruby-0.996

ここで Finder に切り替えて、mecab-ruby-0.996 のフォルダに移動し、extconf.rb をテキストエディタで開きます。

一番下にある

$CFLAGS += ' ' + `#{mecab_config} --cflags`.chomp

have_header('mecab.h') && create_makefile('MeCab')

の間に

$LDFLAGS = '-L/usr/local/lib'

を入れます。次のようになるはずです。

$CFLAGS += ' ' + `#{mecab_config} --cflags`.chomp

$LDFLAGS = '-L/usr/local/lib'

have_header('mecab.h') && create_makefile('MeCab')

これを保存してファイルを閉じます。

ターミナルに戻って、次のコマンドを実行します(入力してリターンキーを押す)。

$ ruby extconf.rb

ここから先の部分は、0.996 では必要ないようです。飛ばしてインストールしてください。もしうまくいかない場合はお試しください。

で、もう一度 Finder で mecab-ruby-0.996 フォルダに戻ると、Makefile というファイルができているので、テキストエディタで開いて、"LDSHARED = cc " という文字列を検索 (Search) して、次のような行を探します。(お使いの Mac によって多少違うかもしれません)

LDSHARED = cc -arch i386 -arch x86_64 -pipe -bundle -undefined dynamic_lookup

見つかったら、最初の cc$(CXX) に置き換えて、次のようにします。

LDSHARED = $(CXX) -arch i386 -arch x86_64 -pipe -bundle -undefined dynamic_lookup

もうひとつ、"LIBS = $(LIBRUBYARG_SHARED)" を検索 (Search) して、次のような行を探します。

LIBS = $(LIBRUBYARG_SHARED) -lstdc++ -lmecab -lpthread -ldl

見つかったら、この行の最後に -liconv を追加して、次のようしてください。

LIBS = $(LIBRUBYARG_SHARED) -lstdc++ -lmecab -lpthread -ldl -liconv

これを保存して閉じます。前のバージョンのときは、-ldl のあとに -lm とあったんですが、なくても動いているのでなくてもだいじょうぶだと思います。問題があったら、次のようにしてください。

LIBS = $(LIBRUBYARG_SHARED) -lstdc++ -lmecab -lpthread -ldl -lm -liconv

ここまで。

ターミナルに戻って、次のコマンドを実行します。

$ make;sudo make install

これで、すべて終了です。 試しに、

$ ruby test.rb

を実行すると、ちゃんとインストールできたか確認できます。

これで動いているので、大丈夫だと思いますが、どこか間違っているところがあったら、教えてください。