Можно, но зачем?#

На свежей VPS понадобился Vim. Я ради ✨разнообразия✨ решила собрать его из исходников с GitHub и лучше б я решила посмотреть очередную серию Отчаянных домохозяек или поела шашлыка. Хотя и узнала кое-что новое для себя.

До этого я не припомню, чтоб в работе у меня была необходимость собирать что-либо из исходников, ну я и решила себе её создать. Это, в общем-то, troubleshooting заметка больше для себя, но пусть и тут будет.


Начиналось всё довольно чинно. Я полезла в документацию, скопировала:

git clone https://github.com/vim/vim.git

Скачалось. Менять конфиг vim я не собиралась, поэтому можно сразу собирать:

cd src
make

И тут началось:

Command 'make' not found, but can be installed with:
sudo apt install make

Ну конечно, чего б ему там быть. Установила, снова использую make:

configure: error: no acceptable C compiler found in $PATH

Чтобы не морочить себе голову, устанавливаю пакет build-essential, который включает make, g++, gcc. Я пока только начинаю развлекаться сборкой из исходников в этот летний субботний вечер, поэтому не углубляюсь в это особо.

Справедливости ради, make я использовала и раньше, но вот про build-essential не знала. Скорее всего, раньше на рабочей машине с Ubuntu 18 я с этим не сталкивалась, потому что он либо уже был установлен, либо подтянут как какая-нибудь зависимость другого пакета. На VPS образы обычно обрубленные, так что не удивительно, что его там не было.

Устанавливаю:

sudo apt update
sudo apt install build-essential

Проверяю версию:

make --version

И снова пробую собрать Vim:

checking for tgetent()... configure: error: NOT FOUND!
      You need to install a terminal library; for example ncurses.
      On Linux that would be the libncurses-dev package.

“Зачем я это с собой делаю?” - спрашиваю я себя и устанавливаю библиотеку ncurses, через которую Vim работает с терминалом:

sudo apt install libncurses-dev

После этого наконец-то завелось:

vim

Назад в блог