Win の Vim は VS で
Vim の clone 元を GitHub へ
Vim が GitHub に移行されたので、ここから新規に clone することにした。.git は細かいファイルをたくさん持っているので、リポジトリサイズ(つまりディスク容量)が気になっていたのだけど、400MB あったものが 90MB まで小さくなっている。
MacBookPro と iBook では問題なくビルドが完了して、両方とも最新版が使えるようになった。ところが、Windows XP でビルドをしてみると、エラーが出てビルドができなかった。code.google 時代でも、新規でのビルドにはエラーが出ていたんだよね。だから移行したその事自体が原因なのではないと思う。
msys から入力したコマンドは下記。
> mingw32-make.exe -f Make_ming.mak GUI=no MBYTE=yes ICONV=yes
そして表示されたエラーが下記。
c:/opt/MinGW/bin/mingw32-make -C GvimExt -f Make_ming.mak CROSS=no CROSS_COMPILE= CXX='g++' STATIC_STDCPLUS=no mingw32-make[1]: Entering directory 'c:/opt/vim/src/GvimExt' g++ -O2 -DFEAT_GETTEXT -c gvimext.cpp -o gvimext.o process_begin: CreateProcess(NULL, g++ -O2 -DFEAT_GETTEXT -c gvimext.cpp -o gvimext.o, ...) failed. make (e=2): 指定されたファイルが見つかりません。 Make_ming.mak:71: recipe for target 'gvimext.o' failed mingw32-make[1]: *** [gvimext.o] Error 2 mingw32-make[1]: Leaving directory 'c:/opt/vim/src/GvimExt' Make_cyg_ming.mak:752: recipe for target 'GvimExt/gvimext.dll' failed mingw32-make: *** [GvimExt/gvimext.dll] Error 2
オプションを無くして mingw32-make.exe -f Make_ming.mak
でやってみたけれど、結果は同じになった。
何となく作業
原因はわからないけれど、以前と同じ作業をすることにした。それは Visual Studio Express を使うこと。コマンドプロンプトを立ち上げて vim/src の中に入って
> msvc2008.bat > nmake -f Make_mvc.mak
のようにしてビルドをした。これだと gvimext.dll が生成されるんだよね、不思議。これ以降は MinGW でもビルドが出来るようになる。MinGW の msys が悪いのかな?パスが通ってなかったりとか……。あと地味に cyg_ming
なんて文字列も見える。
しかし疑問なのは、CUI 版をターゲットにしているのに、gvim に関係していそうな dll をビルドしようとしている所。どちらの版でも必要になるものなのだろうか?
締まらない締め
Visual Studio Express をインストールしていて、それでビルドが出来ているのだから、今後も VS でビルドすれば良いだけの話でした。
ちなみに ThinkPad Z60t は調子が悪くて、起動ボタンを押して良くても 20 回に 1 回の割合でしか起動しない状態なので、次はいつ起動できるのかわかりません。12 月で丸 10 年になるから仕方ないよね。ボタン電池かなぁ…… HDD かなぁ……