Vim をソースからビルドする
vim
「Vim を最新化したい」と思い立ったので、ソースからビルドする手順をメモしておく。 以下は macOS + Homebrew 環境を前提にしている。
前提
--enable-fail-if-missing を付けるので、以下が事前に入っていないと configure が失敗する。
xcode-select --install
brew install luajit python3
最新ソースを取得
git clone https://github.com/vim/vim.git && cd vim
2 回目以降は git pull で更新する。
(任意) 前回のビルド結果と定義を削除
2 回目以降のビルドで configure のオプションを変えるときは、前回の成果物を消しておく。
make distclean
configure を実行し、Makefile を生成
./configure にて、ビルド時の定義を指定する。
ここでは、luajit を有効にするために、luajit のパスを指定する。
./configure --prefix=/usr/local \
--with-features=huge \
--enable-python3interp \
--enable-fail-if-missing \
--enable-luainterp \
--enable-gui=no \
--without-x \
--with-luajit \
--with-lua-prefix="$(brew --prefix luajit)"
--with-lua-prefixはbrew --prefix luajitで解決させ、バージョン固有のパスを書かないようにしている--enable-fail-if-missingを付けると、python3 や luajit が見つからないときに黙ってスキップせずエラーで止まる--prefix=/usr/localのため後述のmake installにsudoが必要になる。避けたい場合は--prefix="$HOME/.local"などにする
ビルドする
make -j$(nproc --ignore=2)
# nproc が未導入なら
# make -j"$(getconf _NPROCESSORS_ONLN)"
インストール する
sudo make install
動作確認
バージョンと、+lua / +python3 が有効になっていることを確認する。
vim --version | head -4
vim --version | grep -oE '[+-](lua|python3)'