Skip to content

Instantly share code, notes, and snippets.

@crivotz
Last active August 4, 2023 12:53
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save crivotz/1137f2998042b4b30f42cc156ea91612 to your computer and use it in GitHub Desktop.
Save crivotz/1137f2998042b4b30f42cc156ea91612 to your computer and use it in GitHub Desktop.
Vim installation

Clean from standard vim

sudo apt-get remove --purge vim vim-runtime vim-gnome vim-tiny vim-common vim-gui-common

Vim dependency

sudo apt-get install liblua5.4-dev luajit2 libluajit2-5.1-2 python3.11-dev libperl-dev python3 libncurses5-dev

Clean and prepare folders

sudo rm -rf /usr/local/share/vim
sudo rm /usr/bin/vim
sudo mkdir /usr/include/lua5.2/include
cd /usr/include/lua5.2/
cp l* include/
sudo ln -s /usr/lib/x86_64-linux-gnu/liblua5.2.so /usr/local/lib/liblua.so

Download it and compile

cd /usr/local/src/
git clone https://github.com/vim/vim
cd vim/src
make distclean

./configure --with-features=huge \
            --enable-multibyte \
            --enable-perlinterp=dynamic \
            --enable-rubyinterp=dynamic \
            --with-ruby-command=$(which ruby) \
            --enable-largefile \
            --disable-netbeans \
            --enable-python3interp \
            --with-python3-config-dir=/usr/lib/python3.11/config-3.11-x86_64-linux-gnu \
            --enable-luainterp \
            --with-luajit \
            --enable-gui=auto \
            --enable-fail-if-missing \
            --enable-cscope

make
sudo make install
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment