Що забезпечує заголовки прокльонів з назвою curses.h?


27

Мені потрібно кілька файлів заголовка, а саме curses.h для текстового програмування. Скажіть, будь ласка, як встановити ці файли заголовків.

Відповіді:


54

Ви можете встановити пакет libncurses5-dev через Software Center або:

sudo apt-get install libncurses5-dev

Також ви можете встановити пакет , натиснувши тут .

Якщо вам потрібен файл або пакет, і ви не можете його знайти, ви можете скористатися деякими інструментами.

1. apt-файл

Спочатку встановіть apt-файл та оновіть його.

sudo apt-get install apt-file
apt-file update

Ви можете шукати потрібні для apt-файлу файли чи пакети.

apt-file search curses.h

2. Використовуйте пакунки.ubuntu.com

Перейдіть за цим посиланням .

Праворуч виберіть вміст пакета, якщо ви шукаєте файл, що входить до пакету. Якщо вам потрібен пакет безпосередньо, просто пошукайте його за його ім'ям, вибираючи назви пакунків .


чи можете ви сказати мені, що містить пакунок libncurses?
кодер

скажіть, будь ласка, як отримати gtk.h
кодер

1
@sharik, я відредагував свою відповідь. Пошук пакетів може бути складним, оскільки при пошуку цих файлів ви можете отримати безліч назв пакунків. Ви повинні знати, що шукаєте. Можливо, зараз вам потрібен libgtk2.0-dev або libgtk-3-dev . Але, оскільки ви використовуєте 11.10, виберіть спочатку libgtk-3-dev . Якщо у вас є додаткові запитання, просто відредагуйте своє запитання, щоб розширити його. Не запитуйте по черзі у своїх коментарях.
heartmagic

Святе лайно, я не можу повірити, що я ніколи не чув про apt-файл після його використання протягом усіх цих років. Дякую за пораду, приголомшливо!
xamox

9

Знайдіть пакет з файлу

Редагувати: Це працює лише для встановленого пакету, тому не в змозі відповісти на питання. Краще відповідь на серце

Щоб дізнатися, до якого пакету входить файл, ви можете використовувати

dpkg -S <file name>

Наприклад, dpkg -S curses.hдає мені такий вихід:

libncurses5-dev: /usr/include/ncurses.h
libncurses5-dev: /usr/include/curses.h

Знайдіть файли в пакеті

Редагувати: Для цього вам потрібно встановити пакет.

Щоб отримати список файлів, наданих пакетом, використовуйте

 dpkg -L <package name>

Наприклад, dpkg -L libncurses5-devдає мені такий результат

/.
/usr
/usr/include
/usr/include/curses.h
/usr/include/cursesapp.h
/usr/include/cursesf.h
/usr/include/cursesm.h
/usr/include/cursesp.h
/usr/include/cursesw.h
/usr/include/cursslk.h
/usr/include/eti.h
/usr/include/etip.h
/usr/include/form.h
/usr/include/menu.h
/usr/include/nc_tparm.h
/usr/include/ncurses_dll.h
/usr/include/panel.h
/usr/include/term.h
/usr/include/term_entry.h
/usr/include/termcap.h
/usr/include/tic.h
/usr/include/unctrl.h
/usr/lib
/usr/lib/libform.a
/usr/lib/libmenu.a
/usr/lib/libncurses++.a
/usr/lib/libncurses.a
/usr/lib/libpanel.a
/usr/lib/libtic.a
/usr/share
/usr/share/doc
/usr/share/doc/libncurses5-dev
/usr/share/doc/libncurses5-dev/copyright
/usr/share/doc/libncurses5-dev/changelog.Debian.gz
/usr/include/ncurses.h
/usr/lib/libncurses.so
/usr/lib/libtic.so
/usr/lib/libform.so
/usr/lib/libmenu.so
/usr/lib/libpanel.so
/usr/lib/libcurses.a
/usr/lib/libtermcap.a
/usr/lib/libtermcap.so
/usr/lib/libcurses.so

Сюди також входять каталоги.


Знайдіть ТІЛЬКИ файли (а не каталоги) в пакеті

Щоб отримати лише ті файли, які пакет містить:

dpkg -L libncurses5-dev | while read file; do if [[ -f $file ]]; then echo ${file}; fi; done

(Опис: Отримайте надані файли, і для кожного з них друкуйте лише, якщо це файл.)


Більше інформації

Ви можете вважати цю таблицю корисною. Просто перегляньте перший стовпець (дія) та третій стовпець (деб), щоб отримати хороший огляд того, що ви можете зробити. (якщо, звичайно, вам не цікаво, тоді подивіться на інші стовпці.)


Це гарна інформація. Але в цьому питанні є невелика проблема. Оскільки пакет libncurses5-dev не встановлений і в його системі немає curses.h, він не може використовувати для пошуку реального пакета, що це забезпечує. Але, крім того, це хороша інформація.
heartmagic

@heartsmagic Дякую, що вказали на це. Я думаю, що я досліджував зміст-i386 тощо. (як, наприклад, у mirror.aarnet.edu.au/pub/ubuntu/archive/dists/oneiric ) і думав, що він буде використовувати це, але насправді це не так.
Portablejim
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.