SnowLeopard で MacVim Kaoriya をビルドする

MacVim-KaoriYa 20120821版がリリースされた。

との事なので職場で使ってる Mac(Snow Leopard)にインストールしてみたら、起動しなかった。
クラッシュレポートを送って対処して貰ったが、対応は難しいとの事。

Mountain Lion にアップデートすれば良いんだろうけど、アップデートするには環境全て再構築になるから時間的余裕がないので厳しい。


ということで自力でビルドする事にした。
Homebrew を使っている人は [twitter:@splhack] さんのが Github にあげられているのを clone すれば良い。


その他宗教上の理由などで MacPorts を使っている人はどうすれば良いか。
1. 自力でビルドする
2. [twitter:@splhack] さんの MacPorts(もうメンテナンスされてない) を clone してメンテされてない所を自分で書き換える


最初 2 の方法で休み時間にやってみたが、MacPortsPerlRuby が入ってるとインストール時にエラーで止まった。
今さら PerlRuby を抜く事は出来ないので、自力でビルドする事にした。

$ git clone https://github.com/splhack/macvim.git
$ cd macvim/src
$ ./configure --with-local-dir=/opt/local --with-features=huge --enable-multibyte --enable-netbeans --with-tlib=ncurses --enable-tclinterp --enable-cscope --enable-perlinterp=dynamic --enable-pythoninterp=dynamic --enable-rubyinterp=dynamic --enable-ruby19interp=dynamic
$ cd po
$ vim Makefile

Makefile の gettext 関連の所を書き換える。

-MSGFMT = OLD_PO_FILE_INPUT=yes msgfmt -v
-XGETTEXT = OLD_PO_FILE_INPUT=yes OLD_PO_FILE_OUTPUT=yes xgettext
-MSGMERGE = OLD_PO_FILE_INPUT=yes OLD_PO_FILE_OUTPUT=yes msgmerge
+MSGFMT = OLD_PO_FILE_INPUT=yes /opt/local/bin/msgfmt -v
+XGETTEXT = OLD_PO_FILE_INPUT=yes OLD_PO_FILE_OUTPUT=yes /opt/local/bin/xgettext
+MSGMERGE = OLD_PO_FILE_INPUT=yes OLD_PO_FILE_OUTPUT=yes /opt/local/bin/msgmerge

# Homebrew のソースを見たら書き換えてたので一応

メッセージを作成する。これが無いと make 時にエラーになる。

$ make

MacVim を make する。

$ cd ..
$ make

ビルドが成功したら、MacVim.app を起動してみる。

$ cd MacVim/build/Release/
$ open .

MacVim.app を起動して起動できれば問題なし。


ハマった点は iconv が有効になってなかった。
色々調べた所 ./configure --with-local-dir=/opt/local で libiconv がある /opt/local を設定すれば有効になった。


後は cmigemo や ctags, mvim などを入れれば、配布している MacVim Kaoriya と同等になるはずだが、とりあえず使えるようになった。