概要
- neocomplete.vimを使っている関係で,Lua対応版のVimを入れたい.
- 英語が苦手なのもあって日本語コメントを多々入れているため,マルチバイト文字にも対応する必要がある.
- CUIからしか使わない
- OSはLinux (Ubuntu12.04LTS)
という要件で,VimをソースコードからMakeすることにした.
手順
必要なパッケージの導入
めんどくさいので,一括で入れた.
$ sudo apt-get build-dep vim
順番が入れ替わるけど,これだけだと./configure時に次のように言われる.要するにlibluajitが見つからない.
checking if libluajit*.so* can be found in /usr... no
luajitとlibluajitが入らなかったのでこれは手動で入れた.
$ sudo apt-get install luajit libluajit-5.1
ソースコードの取得
Mercurialで取得する.
$ sudo apt-get install mercurial
$ hg clone https://vim.googlecode.com/hg/ vim
make
$ ./configure --with-features=huge
--disable-darwin
--disable-selinux
--enable-multibyte
--enable-perlinterp
--enable-pythoninterp
--enable-rubyinterp
--enable-luainterp=dynamic
--with-lua-prefix=/usr
--with-luajit
--enable-fail-if-missing
$ make
オプションを変更しなおした場合は,次でmake
$ make reconfig
インストール./usr/local/binに入れてくれるみたい.
$ sudo make install
./configureでlibluajitがないとコケる場合
libluajit*.so.* がないと怒られた.シンボリックリンクを貼るなどしても特に変わらず.
そこで,公式からソースコードを落としてmakeした.
$ git clone http://luajit.org/git/luajit-2.0.git
$ cd luajit-2.0
$ make
$ sudo make install
これで通ったっぽい.
最後に
一応,これでLua対応版のVimが入ったはず.この時点でver 7.4.179.
Raspberry Piにも入れたいし,必要なパッケージの導入部分は後でちゃんと書き直そうと思う.
以上のことを一括で行うシェルスクリプトを貼っとく.Vimにアップデートがあったりしてもコレでいけるはず.
#!/bin/bash
# update source codes
hg pull
hg update
# make
make distclean
./configure --with-features=huge \
--disable-darwin \
--disable-selinux \
--enable-multibyte \
--enable-perlinterp \
--enable-pythoninterp \
--enable-rubyinterp \
--enable-luainterp=dynamic \
--with-lua-prefix=/usr \
--with-luajit \
--enable-fail-if-missing \
make
sudo make install