4

Я пытаюсь создать что-то, что, по-видимому, зависит от termcap (он все время говорит, что cannot find - ltermcap).

Я запустил Cygwin setup-x86_64.exe, надеясь установить оттуда termcap; однако я не нашел его ни в списке пакетов, ни в списке пакетов на веб-сайте Cygwin, так что, похоже, его нет в Cygwin. Я не могу согласиться с тем, что это не так, потому что поиск в Google намекает иначе.

Я мог бы получить termcap от http://gnuwin32.sourceforge.net/packages/termcap.htm, но я не знаю, совместимо ли это с Cygwin, и кажется, что использовать Cygwin намного чище.

Извините, если я говорю, что не знаю, о чем говорю, потому что, вероятно, не знаю.

2 ответа2

6

Я запустил Cygwin setup-x86_64.exe, надеясь установить termcap

Тем не менее, я не нашел его в списке пакетов

Примечание. Из http://gnuwin32.sourceforge.net/packages/termcap.htm:

Тем не менее, использование termcap не рекомендуется. Termcap постепенно сокращается в пользу библиотеки ncurses на основе terminfo, которая в дополнение к превосходной реализации curses содержит эмуляцию подпрограмм библиотеки termcap.

Итак, на Cygwin вы должны строить с использованием ncurses .

  • Вам может понадобиться настроить makefile для программы, которую вы пытаетесь собрать, чтобы сделать это (чтобы он связывался с правильными библиотеками для эмуляции ncurses termcap)

  • Пакет Cygwin ncurses включает в себя:

    usr/include/ncurses/termcap.h -> ../termcap.h
    

    Который предоставляет интерфейс для эмуляции ncurses в termcap

Вы всегда можете узнать, какие пакеты содержат определенные команды cygwin, используя Search Packages:

Я бы предложил установить:

  • cygwin32-ncurses-5.7-1 - cygwin32-ncurses: ncurses для 32-битной цепочки инструментов Cygwin (установленные двоичные файлы и файлы поддержки)
  • libncurses-devel-6.0-1.20151017 - libncurses-devel: библиотека отображения терминала (установленные двоичные файлы и файлы поддержки)
5

Cygwin использует ncurses, который предоставляет интерфейс termcap. Он сделал это в течение некоторого времени (см. Примечания за 2001 год). ncurses предоставляет интерфейсы для termcap, terminfo и, конечно, curses.

В некоторых системах пакет ncurses может предоставлять символическую ссылку, чтобы помочь приложениям, которые ожидают, что библиотека, предоставляющая интерфейс termcap, будет названа "termcap", например.

libtermcap.a -> libncurses.a

но (см. списки времени выполнения и разработки) Cygwin не делает этого. Также (как вы заметили) он не предоставляет отдельную библиотеку termcap (см. Результаты поиска).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .