Co zapewnia nagłówki curses o nazwie curses.h?

27

Potrzebuję kilku plików nagłówkowych, a mianowicie curses.h do programowania tekstowego. Powiedz mi, jak zainstalować te pliki nagłówkowe.

koder
źródło

Odpowiedzi:

54

Możesz zainstalować pakiet libncurses5-dev poprzez Software Center lub:

sudo apt-get install libncurses5-dev

Możesz także zainstalować pakiet , klikając tutaj .

Gdy potrzebujesz pliku lub pakietu i nie możesz go znaleźć, możesz użyć niektórych narzędzi.

1. apt-file

Najpierw zainstaluj apt-file i zaktualizuj go.

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

Możesz wyszukiwać za pomocą apt-file potrzebnych plików lub pakietów.

apt-file search curses.h

2. Skorzystaj z packages.ubuntu.com

Przejdź do tego linku .

W prawym górnym rogu wybierz zawartość pakietu, jeśli szukasz pliku dołączonego do pakietu. Jeśli potrzebujesz pakietu bezpośrednio, po prostu wyszukaj go, wybierając jego nazwy .

żartobliwy
źródło
czy możesz mi powiedzieć, co zawiera pakiet libncurses?
programista
proszę powiedz mi, jak zdobyć gtk.h
programista
1
@sharik, zredagowałem swoją odpowiedź. Znalezienie pakietów może być trudne, ponieważ podczas wyszukiwania tych plików można uzyskać wiele nazw pakietów. Musisz wiedzieć, czego szukasz. Prawdopodobnie potrzebujesz teraz libgtk2.0-dev lub libgtk-3-dev . Ponieważ jednak używasz wersji 11.10, najpierw wybierz wersję libgtk-3-dev . Jeśli masz więcej pytań, po prostu edytuj swoje pytanie, aby je poszerzyć. Nie pytaj jeden po drugim w swoich komentarzach.
heartsmagic 13.11.11
Cholera jasna, nie mogę uwierzyć, że nigdy nie słyszałem o apt-file po użyciu go przez te wszystkie lata. Dzięki za wskazówkę, super!
xamox
9

Znajdź pakiet z pliku

Edycja: Działa to tylko w przypadku zainstalowanego pakietu, więc nie jest w stanie odpowiedzieć na pytanie. Lepsza jest odpowiedź heartmagic

Aby dowiedzieć się, jakim pakietem jest plik, możesz użyć

dpkg -S <file name>

Na przykład dpkg -S curses.hdaje mi ten wynik:

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

Znajdź pliki w paczce

Edycja: Musisz mieć zainstalowany pakiet, aby to działało.

Aby uzyskać listę plików dostarczonych przez pakiet, użyj

 dpkg -L <package name>

Na przykład dpkg -L libncurses5-devdaje mi następujące dane wyjściowe

/.
/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

Dotyczy to również katalogów.


Znajdź TYLKO pliki (nie katalogi) w pakiecie

Aby uzyskać tylko pliki, które zawiera pakiet:

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

(Opis: Pobierz dostarczone pliki i dla każdego z nich wydrukuj tylko, jeśli jest to plik).


Więcej informacji

Ta tabela może być przydatna. Wystarczy spojrzeć na pierwszą kolumnę (działanie) i trzecią kolumnę (deb), aby uzyskać dobry przegląd tego, co możesz zrobić. (chyba że jesteś ciekawy, to spójrz na inne kolumny).

Portablejim
źródło
To dobra informacja. Jest jednak mały problem z tym pytaniem. Ponieważ pakiet libncurses5-dev nie jest zainstalowany i nie ma curses.h w swoim systemie, nie może użyć do znalezienia prawdziwego pakietu, który to zapewnia. Ale poza tym to dobra informacja.
heartsmagic 13.11.11
@heartsmagic Dzięki za zwrócenie na to uwagi. Chyba sprawdziłem Contents-i386 itp. (jak w mirror.aarnet.edu.au/pub/ubuntu/archive/dists/oneiric ) i pomyślał, że to wykorzysta, ale tak naprawdę nie.
Portablejim,