При компиляции Vim библиотека терминалов не найдена


31

Я использую Ubuntu 12.04.

Я пытаюсь получить определенный плагин для работы vim, и он требует, чтобы в vim была включена поддержка ruby ​​(плагин - command-t).

Люди говорят мне, что я должен зайти в свой каталог vim и запустить

./configure --enable-rubyinterp

Когда я делаю это, я получаю следующую ошибку:

    no terminal library found
checking for tgetent()... configure: error: NOT FOUND!
      You need to install a terminal library; for example ncurses.
      Or specify the name of the library with --with-tlib.

Теперь я проверил и ncurses-base установлен.

Что мне нужно сделать?


4
Я думаю, что вы должны установить ncurses-devбиблиотеку
epsilonhalbe

Не могли бы вы предоставить содержаниеsrc/auto/config.log
epsilonhalbe

спасибо, эпсилон, это решило. Не могли бы вы сделать это в ответ, чтобы я мог отдать вам должное
Fawkes5

Ответы:


47

Я думаю, что вы должны установить ncurses-devбиблиотеку.

Вы можете сделать это, запустив sudo apt-get install libncurses5-dev libncursesw5-dev


1
Я использую Ubuntu 16.10 и не могу найти пакет "ncurses-dev". Я наконец обнаружил, что установка libtinfo-dev сделала свое дело.
Марникс А. ван

3
в Ubuntu 16.04: sudo apt-get install ncurses-dev
Гари

Последние подходящие репозитории libncurses5-devncurses-dev
выбраны

17

Запустите, sudo apt-get build-dep vimчтобы установить все пакеты, которые использовались для сборки пакета vim из репозиториев.


+1 для команды build-
dep

13

если ты нет доступа к sudo, решение будет следующим:

загрузить последнюю (или любую) версию ncurses с http://ftp.gnu.org/pub/gnu/ncurses/

запустите эти команды bash:

mkdir ~/usr/local
cd <path_to_ncurses>
tar xzvf <ncurses>.tar.gz # change the tar command if it is not a tar.gz
cd <ncurses>
./configure --prefix=$HOME/usr/local
make
make install
cd <path_to_vim>
LDFLAGS=-L$HOME/usr/local/lib ./configure # then add any options e.g. --prefix=$HOME/usr/local
make
make install

И вот, пожалуйста. Не часто люди не имеют доступа sudo к машине, но это был мой случай, и эта ветка не предоставила мне необходимую информацию :) Теперь она делает


1
В моем случае вышеприведенный шаг все еще недостаточно хорош. Мне нужно добавить, $HOME/usr/local/libчтобы LD_LIBRARY_PATH.
Пенге Гэн

1

Я использую Ubuntu 16.10 и не могу получить VIM 8.0 для компиляции. Поиск в Google подсказал мне установить пакет, ncurses-devно я не смог найти этот пакет. В конце концов я обнаружил, что установка пакета libtinfo-devсделала свое дело, и я смог скомпилировать vim.


0

Основываясь на моем опыте, я сделал sudo apt-get install libncurses5-dev libncursesw5-dev.

Я был на Ubuntu 14.04. Это сработало.


Это добавляет что-нибудь к принятому ответу?
Анвар

# sudo apt-get install libncurses5-dev libncursesw5-dev Чтение списков пакетов ... Готово Построение дерева зависимостей Чтение информации о состоянии ... Готово libncurses5-dev уже самая новая версия (6.0 + 20160213-1ubuntu1). libncursesw5-dev уже является новейшей версией (6.0 + 20160213-1ubuntu1). 0 обновлено, 0 вновь установлено, 0 для удаления и 40 не обновлено. ............................ все еще получаю ошибку: / usr / bin / ld: help.o: неопределенная ссылка на символ 'delwin @ @ NCURSES_5.0.19991023 '
Ашиш Карпе

//usr/local/lib/libncurses.so.5: ошибка при добавлении символов: DSO отсутствует в командной строке collect2: error: ld вернул 1 состояние выхода Makefile: 18: рецепт для цели 'omnitty' не выполнен make: *** [omnitty ] Ошибка 1
Ашиш Карпе
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.