non-root userでVim+Lua
こんにちは、びしょ〜じょです。
これはcoins Advent Calendar 2014 - Adventar8日目の記事とも言えます。
大学、計算機室。こちとら学費を払っているいわば顧客やぞ、なめた環境しやがって。
T大情報学群情報科学類の計算機室に入っているVimはちょいと古い。OS Xでビルドすると途中でコケて面倒だしOS Xは個人的に好きじゃないので放置。
さて本題に入ります。タイトルの通りnon-root userでVimとLuaをビルドします。
え、大学のVimでneocompleteとか使いたいと思いませんか。はい。
1. readline
pentasでLuaをビルドするとreadlineが無いなどで怒られます。ということでまずreadlineをビルドします。
mkdir ~/local mkdir ~/tmp cd ~/tmp wget https://ftp.gnu.org/gnu/readline/readline-6.3.tar.gz tar xvf readline-6.3.tar.gz cd readline-6.3 ./configure --prefix=${HOME}/local make -j32 make -j32 install
pentasはXeon E5-2650を積んでいる!!8 core 16 threadsすげえ!!make
はええ〜〜っぴゅぴゅぴゅ〜〜〜
2. Lua
ということでreadlineがビルドできた。続いてLua行きます。
wget http://www.lua.org/ftp/lua-5.2.3.tar.gz
tar xvf lua-5.2.3.tar.gz
cd lua-5.2.3
そういえばここで罠が発生します。このままLuaをビルドするとVimにLuaインタプリタが入りません。悲しい。
Makefileに細工をする必要があります。
ではこちらをご覧ください。
ここでまた罠が発生します。上記の通りだと./configure
でコケます。
liblua.soの部分をliblua.so.5.2(wgetで引っ張ったバージョンと同じにする)に書き換えます。
これでOK。
make linux -j32 MYCFLAGS="-I${HOME}/local/include" MYLDFLAGS="-L${HOME}/local/lib -L/usr/lib64" MYLIBS="-lncursesw" cd src && make -j32 linux make -j32 install INSTALL_TOP=${HOME}/local/lua
OK。~/local/lua
ができたと思います。
3. Vim
さて本題のVim。
hg clone https://vim.googlecode.com/hg/ vim cd vim/ ./configure --with-features=huge \ --enable-rubyinterp=dynamic \ --with-lua-prefix=${HOME}/local/lua \ --enable-luainterp=dynamic \ --enable-fail-if-missing \ --enable-multibyte \ --libdir=/usr/lib64 \ --prefix=${HOME}/local \ make -j32 make -j32 install
$HOME/local/bin
にVimが爆誕しました。パスを通してください。ついでにLuaもあるので是非使ってください。
おわり