コマンドだけでもいけるんです。
-
対象者
:Windowsでvimをビルドしてみたい変態 -
終着点
:+lua,+pythonなvimを使える。
とっととやろう
まずは必要なパッケージを`chocolateyで持ってきます。
> @powershell -NoProfile -ExecutionPolicy unrestricted -Command "iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))" && SET PATH=%PATH%;%systemdrive%\chocolatey\bin
> rem .NETがない場合再起動が必要かも
> cinst git
> cinst curl
> cinst hg
> cinst mingw
> cinst mingw-get
> cinst python
パスを通すためにコマンドプロンプトを再起動
mingwでビルドするのでmingw32-gcc-g++などコンパイルに必要なものをインストールします。
msys-baseをインストールしたときに入ると思われるmsys-vimは邪魔なので消します。
msysにパスを通します。
> mingw-get install mingw-developer-toolkit
> mingw-get install mingw32-base
> mingw-get install mingw32-gcc-g++
> mingw-get install msys-base
> mingw-get remove msys-vim
> setx PATH %PATH%;"C:\MinGW\msys\1.0\bin"
パスを通すためにコマンドプロンプトを再起動
lua(5.2.3)とvimをビルドします。
筆者が行った時点(2014.03.09)ではvimのバージョンは7.4.193でした。
> mkdir src_temp
> cd src_temp
> curl -R -O http://www.lua.org/ftp/lua-5.2.3.tar.gz
> tar zxf lua-5.2.3.tar.gz
> cd lua-5.2.3
> make mingw
> make mingw install
> mkdir include
> cp src/*.h include
> cd ..
> hg clone https://vim.googlecode.com/hg/ vim
> set PYTHON_DIR=C:\Python27
> set PYTHON_VER=27
> set LUA_DIR=../../Lua-5.2.3
> set LUA_VER=52
> cd vim/src
> mingw32-make -f Make_ming.mak GUI=yes IME=yes MBYTE=yes ICONV=yes PYTHON=%PYTHON_DIR% DYNAMIC_PYTHON=yes PYTHON_VER=%PYTHON_VER% CSCOPE=yes NETBEANS=no LUA=%LUA_DIR% DYNAMIC_LUA=yes LUA_VER=%LUA_VER%
> mingw32-make -f Make_ming.mak GUI=no IME=yes MBYTE=yes ICONV=yes PYTHON=%PYTHON_DIR% DYNAMIC_PYTHON=yes PYTHON_VER=%PYTHON_VER% CSCOPE=yes NETBEANS=no LUA=%LUA_DIR% DYNAMIC_LUA=yes LUA_VER=%LUA_VER%
> cd ../
> cp ./src/*.exe ./runtime/
> cp ./src/*.dll ./runtime/
> cp ../lua-5.2.3/src/lua52.dll ./runtime
> cp c:/Python27/python27.dll ./runtime
> mkdir c:\vim
> mv runtime\* c:\vim
> setx PATH %PATH%;"C:\vim"
最後に
hg cloneする利点はパッチの当たった状態のほぼ最新のvimのソースを持ってこれる点です。
もしvimのソースが古いなら
> cd %HOMEPATH%/src_temp/vim
> hg pull
> hg update
しとけばオーケーです。