<Poprzedni | Spis treści | Następne>
Badanie drzewa źródłowego
Rozpakowanie pliku tar powoduje utworzenie nowego katalogu o nazwie dykcja-1.11. Ten katalog zawiera drzewo źródłowe. Zajrzyjmy do środka:
[me@linuxbox src]$ CD Diction-1.11
[ja@linuxbox diction-1.11]$ ls
[me@linuxbox src]$ CD Diction-1.11
[ja@linuxbox diction-1.11]$ ls
config.zgadnij dykcję.c
config.h.in diction.pot config.sub diction.spec konfiguruj diction.spec.in konfiguruj.in diction.texi.in KOPIOWANIE pl
en_GB
de.po en_GB.po słownik.1.in getopt1.c
getopt.c
getopt.h getopt_int.h ZAINSTALUJ
install-sh Makefile.in misc.c misc.h WIADOMOŚCI
nl
nl.po PRZECZYTAJ
zdanie.c zdanie.h styl.1.w teście stylu.c
config.zgadnij dykcję.c
config.h.in diction.pot config.sub diction.spec konfiguruj diction.spec.in konfiguruj.in diction.texi.in KOPIOWANIE pl
en_GB
de.po en_GB.po słownik.1.in getopt1.c
Widzimy w nim wiele plików. Programy należące do Projektu GNU, a także wiele innych, dostarczą pliki dokumentacji README, INSTALL, AKTUALNOŚCI, KOPIOWANIE. Pliki te zawierają opis programu, informacje o sposobie jego zbudowania i instalacji oraz warunki licencji. Zawsze dobrze jest dokładnie zapoznać się z treścią README i INSTALL plików przed próbą zbudowania programu.
Inne interesujące pliki w tym katalogu to te, które kończą się na .c i .h:
[ja@linuxbox diction-1.11]$ ls * .c
diction.c getopt1.c getopt.c misc.c zdanie.c styl.c [me@linuxbox diction-1.11]$ ls *.h
getopt.h getopt_int.h misc.h zdanie.h
[ja@linuxbox diction-1.11]$ ls * .c
diction.c getopt1.c getopt.c misc.c zdanie.c styl.c [me@linuxbox diction-1.11]$ ls *.h
getopt.h getopt_int.h misc.h zdanie.h
Kurs .c pliki zawierają dwa programy C dostarczone w pakiecie (styl i dykcja), podzielone na moduły. Powszechną praktyką jest dzielenie dużych programów na mniejsze, łatwiejsze w zarządzaniu części. Pliki kodu źródłowego są zwykłym tekstem i można je przeglądać mniej:
[ja@linuxbox diction-1.11]$ mniej dykcji.c
[ja@linuxbox diction-1.11]$ mniej dykcji.c
Kurs .h pliki są tzw pliki nagłówkowe. To także jest zwykły tekst. Pliki nagłówkowe zawierają opisy procedur zawartych w pliku kodu źródłowego lub bibliotece. Aby kompilator mógł połączyć moduły, musi otrzymać opis wszystkich modułów potrzebnych do wykonania całego programu. W pobliżu początku dykcja.c plik, widzimy tę linię:
#include „getopt.h”
#include „getopt.h”
To instruuje kompilator, aby odczytał plik getopt.h podczas wczytywania kodu źródłowego dykcja.c żeby „wiedzieć”, co jest w środku getopt.c, getopt.c procedury dostarczania plików, które są wspólne dla obu styl i dykcja programy.
Wyżej zawierać oświadczenie za getopt.h, widzimy inny zawierać takie stwierdzenia jak te:
#włączać
#włączać
#zawierać
#włączać
#włączać
#włączać
#włączać
#zawierać
#włączać
#włączać
Odnoszą się one również do plików nagłówkowych, ale odnoszą się do plików nagłówkowych znajdujących się poza bieżącym drzewem źródłowym. Są one dostarczane przez system i wspomagają kompilację każdego programu. Jeśli zajrzymy / Usr / include, możemy je zobaczyć:
[ja@linuxbox diction-1.11]$ ls /usr/include
[ja@linuxbox diction-1.11]$ ls /usr/include
Pliki nagłówkowe w tym katalogu zostały zainstalowane podczas instalacji kompilatora.