MinGW + MSYS 環境で Text::Kakasi をビルドする

MinGW + MSYS 環境で Text::Kakasi をビルドする手順。忘れないようにメモしておく。以下は、MinGW 5.1.3、MSYS 1.0.10、ActivePerl 5.8.8 build 820 での話。バージョンが違えば異なる箇所も出てくるかもしれない。

  • MinGW と MSYS をインストールする

http://www.mingw.org/ からダウンロード。
インストーラがあるのでそれを使ってインストールするだけ。

  • nmake をインストールする

Perl モジュールのビルドには nmake を使う。nmake はここらへんからダウンロードできる。できなければ、「nmake15」とかで検索すると出てくるかも。

  • ExtUtils::FakeConfig をインストールする

http://search.cpan.org/~mbarbon/ExtUtils-FakeConfig/ からダウンロード。
ppm からもインストールできるが、バージョンが古くいろいろと不都合が生じるので CPAN から最新バージョン(これを書いている時点では 0.10)をダウンロードしてインストールする。
MSYS のホームフォルダかどこかに展開後、

perl Makefile.PL
nmake
nmake install

でインストール。make の代わりに nmake を使う以外は特筆すべきこともなし。

  • Kakasi のインストール

http://kakasi.namazu.org/ からダウンロード。
普通にインストールするだけ。

./configure
make
make install

  • Text::Kakasi のインストール

http://search.cpan.org/dist/Text-Kakasi/ からダウンロード。
ExtUtils::FakeConfig を使うことを忘れないこと。

perl -MConfig_m Makefile.PL
nmake
nmake install

……でうまくいくはずなのだが、なぜか libkakasi.a やら libkakasi.h やらを見つけてくれないので、Makefile.PL の /usr/local/includeE:\msys\1.0\local\include に、/usr/local/libE:\msys\1.0\local\lib にそれぞれ置き換えて(msys は E ドライブにインストールされている)から実行する。
なにか設定が間違っているだけとか、あるいはもっといい方法がありそうな気もするが(ls /usr/local/include などとすれば libkakasi.h がちゃんと見つかるのだし)、とりあえずはこんな感じで。