ソースからビルドする方法

公式サイトに載ってないので勝手に方法を調べてビルドしてみた。

事前準備

Visual Studioを用意しましょう。VS2005推奨。

ビルド手順

基本的にはsrcディレクトリにcdしてmake.batを実行するだけです。でもハードルがいくつかあります。

以下、順に説明します。

Makefile.msvcを作る

make.batの中で実行されるnmakeコマンドのためにMakefile.msvcファイルが必要です。しかしMeCabのソース配布版にはMakefile.msvcは含まれていません。

これはLinux上で一度ビルドすることで、Makefile.msvc.inから自動生成されるようです。ですのでLinux上で一度ビルドし、Makefile.msvcを生成しましょう。

cl.exeがエラー

たぶん、WindowsCUI環境でVisual Studioを使ったことがないマシンであれば、cl.exeを実行しようとするとエラーが起きるでしょう。これは単に依存DLLへのPATHが通っていないのが原因です。

mspdb80.dllというDLLがVisual Studioのインストールディレクトリ配下にあるはずなので、そのディレクトリへのパスを環境変数PATHに追加します。

windows.hが開けない

同様に、windows.hが参照できずにエラーになる場合があります。これも似たような場所にあるのでそのディレクトリへのパスを環境変数INCLUDEに追加しましょう。

ADVAPI32.LIBが開けない

これまた同様の理由です。AdvAPI32.libへのパスを環境変数LIBに追加しましょう。

これらのハードルがクリアできていれば、make.batが最後まで動作し、srcディレクトリにmecab.exeとかlibmecab.dllとかが一式作られるはずです。

[おしまい]

おまけ

昨日のパッチをあてたmecabwindowsでビルドして動作させるのに成功したよ!

C:\mecab\bin>mecab
わーいわーい
わーい  感動詞,*,*,*,*,*,わーい,ワーイ,ワーイ
わーい  感動詞,*,*,*,*,*,わーい,ワーイ,ワーイ
EOS