警告
aptで入れられるvimに満足出来なくなった時用。
あくまで私個人の用途に最適化しているので、ご利用の際はコードをそのままコピペせずにご自身の環境に合わせて修正してください。
Ubuntuと明記していますが、当方ではDebianベースのRaspberry pi OSでの動作を確認しています。
事前準備
必要なパッケージをインストールする
sudo apt install make cmake autogen automake libffi-dev libperl-dev libbz2-dev zlib1g-dev libreadline-dev libssl-dev libsqlite3-dev liblzma-dev
pyenvを使ってpythonをインストール
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
echo 'export PATH="$HOME/.pyenv/bin:$HOME/.pyenv/shims:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
source ~/.bashrc
pyenv -v
pyenv install --list | grep 3.10
pyenv install 3.10.8
pyenv global 3.10.8
python -V
# Python 3.10.8
rbenvを使ってrubyをインストール
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
echo 'export PATH="$HOME/.rbenv/bin:$HOME/.rbenv/shims:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
source ~/.bashrc
rbenv -v
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
rbenv install -l | grep 3.1
rbenv install 3.1.2
rbenv global 3.1.2
source ~/.bashrc
ruby -v
# ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [aarch64-linux]
vimのインストール
-
make install
する前に、 python3, rubyが'+'になっているかを確認すること!! - python2とpython3の動的(dyn)なインストールは、windows以外では不可能です。あとで悩むことになるのでどちらか片方にしておきましょう。2020年にサポート終了する2.x系は今更なので、素直に3.x系で良いと思います。
cd /tmp
git clone https://github.com/vim/vim
cd vim
./configure \
--enable-fail-if-missing \
--with-features=huge \
--disable-selinux \
--enable-perlinterp \
--enable-python3interp \
--enable-rubyinterp \
--with-ruby-command=$HOME/.rbenv/shims/ruby \
--enable-cscope \
--enable-fontset \
--enable-multibyte \
vi_cv_path_python3=$HOME/.pyenv/shims/python
make
# ↓↓↓make installする前に、python, rubyが'+'になっているかを確認すること↓↓↓
./src/vim --version
# ↑↑↑make installする前に、python, rubyが'+'になっているかを確認すること↑↑↑
sudo make install
終わり~
失敗した場合
ビルドに失敗したり、良くわからない状況になったら以下のコマンドで全てを無かったことにしましょう。
cd /tmp
sudo make distclean
自動ビルド的なスクリプト(私家版)
私は/usr/local/src/
にgit clone https://github.com/vim/vim
したので、以後の更新は/usr/local/src/vim
に入ってgit pull
すれば簡単に最新版を持ってこれます。なのでroot
上で以下のスクリプトを実行すれば全自動で最新激アツvim
が勝手にビルドされます。cron
で週に1回くらいビルドすると楽しいかも...。
sudo su -
update_vim81.sh
#! /bin/bash
cd /usr/local/src/vim && git pull \
./configure \
--enable-fail-if-missing \
--with-features=huge \
--disable-selinux \
--enable-perlinterp \
--enable-python3interp \
--enable-rubyinterp \
--with-ruby-command=$HOME/.rbenv/shims/ruby \
--enable-cscope \
--enable-fontset \
--enable-multibyte \
vi_cv_path_python3=$HOME/.pyenv/shims/python
make && make install && make distclean