2019/6/14 追記
vim --version
の結果、適用済みパッチが1-1365
以下の場合、vimリモート機能を悪用した脆弱性があるようです。記事を書いているときのバージョンは1-1525
でした。ちゃちゃっとアップデートしておきましょう。
標準vimはあかんねん
標準で入っているvim
はバージョンが7.4
と古くlua
やpython
とも連携していないため、vim
の便利なpluginが使えません。
今回はタイトル通り、centOS7環境にvim8.1+lua+python3.6環境を作っていきたいと思います。1
やること
- 後の作業に必要なパッケージ群やリポジトリのインストール
- 標準vimの削除
- python3.6のインストール
前提パッケージ、リポジトリ準備
sudo yum install https://centos7.iuscommunity.org/ius-release.rpm
sudo yum install openssl-devel readline-devel zlib-devel
perlのインストール
vimのコンパイル時にこれが無いとエラります
sudo yum install perl-ExtUtils-Embed
luaのインストール
sudo yum install lua-devel ncurses-devel
rubyのインストール
もとから入っているやつは化石みたいなバージョンなので、最新版を入れましょう
cd /tmp
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
source ~/.bash_profile
rbenv -v
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
sudo ~/.rbenv/plugins/ruby-build/install.sh
rbenv install -l
rbenv install 2.5.3
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
source ~/.bash_profile
rbenv global 2.5.3
ruby -v
python3.6のインストール
sudo yum install python-devel python36u python36u-libs python36u-devel python36u-pip
vim-enhancedの削除
vim-commonとか入っているかもしれないけど、vim-enhanced
だけ削除すればよろしい
sudo yum list installed | grep vim
sudo yum remove vim-enhanced
vim8.1のインストール
make installする前に、lua, python, rubyが'+'になっているかを確認すること!!
cd /tmp
git clone https://github.com/vim/vim
cd vim
sudo ./configure \
--enable-fail-if-missing \
--with-features=huge \
--disable-selinux \
--enable-luainterp \
--enable-perlinterp \
--enable-pythoninterp=dynamic \
--with-python-config-dir=/usr/lib64/python2.7/config \
--enable-python3interp=dynamic \
--with-python3-config-dir=/usr/lib64/python3.6/config-3.6m-x86_64-linux-gnu \
--enable-rubyinterp=dynamic \
--with-ruby-command=/home/'あなたのユーザ名'/.rbenv/shims/ruby \
--enable-cscope \
--enable-fontset \
--enable-multibyte \
vi_cv_path_python3=/usr/bin/python3.6
sudo make
# ↓↓↓make installする前に、lua, python, rubyが'+'になっているかを確認すること↓↓↓
./src/vim --version
# ↑↑↑make installする前に、lua, python, rubyが'+'になっているかを確認すること↑↑↑
sudo make install
つつがなく終わったら、vim --version
で確認。画像の通りになっていますか?- lua
にとかになっていたら失敗しているので、もう一度やりましょう...
終わりに
ビルドに失敗したら、以下のコマンドで全てをなかったことにしましょう
sudo rm -rf /usr/bin/vim
sudo rm -rf /usr/local/share/vim
cd /tmp/vim/src
sudo make distclean
-
とりあえず過去のコマンドを見ながら思い出しつつ書いているので、間違っていたらどんどん教えてください。 ↩