linux.-niezbednik-programisty cała książka.pdf

(17590 KB) Pobierz
888182443.001.png
6
Spis treści
1.6.4. Podpisy narzędzia GPG, stosowane dla pakietów RPM ........................................................ 52
1.6.5. Kiedy uwierzytelnienie pakietu jest niemożliwe .................................................................... 56
1.7. Analiza zawartości pakietu ................................................................................................................ 57
1.7.1. Jak analizować pobrane pakiety ................................................................................................ 59
1.7.2. Szczegółowa analiza pakietów RPM ....................................................................................... 61
1.7.3. Szczegółowa analiza pakietów Debiana ................................................................................... 62
1.8. Aktualizowanie pakietów .................................................................................................................. 64
1.8.1. APT Advanced Package Tool ............................................................................................. 66
1.8.2. YUM Yellowdog Updater Modified .................................................................................. 67
1.8.3. Synaptic nakładka narzędzia APT z graficznym interfejsem użytkownika ...................... 67
1.8.4. up2date narzędzie aktualizujące pakiety dystrybucji Red Hat .......................................... 69
1.9. Podsumowanie .................................................................................................................................. 71
1.9.1. Narzędzia użyte w tym rozdziale ............................................................................................ 71
1.9.2. Materiały dostępne w internecie .............................................................................................. 72
Rozdział 2.
Kompilacja kodu źródłowego .................................................................................... 73
2.1. Wprowadzenie ................................................................................................................................... 73
2.2. Narzędzia kompilujące ..................................................................................................................... 74
2.2.1. Rys historyczny ......................................................................................................................... 74
2.2.2. Zrozumieć program make ....................................................................................................... 77
2.2.3. Jak przebiega proces łączenia programów ............................................................................. 103
2.2.4. Zrozumieć biblioteki .............................................................................................................. 104
2.3. Proces kompilacji ............................................................................................................................ 109
2.3.1. Narzędzia kompilacji GNU .................................................................................................. 110
2.3.2. Etap konfiguracji (skrypt configure) ...................................................................................... 111
2.3.3. Etap kompilacji narzędzie make ....................................................................................... 113
2.3.4. Etap instalacji polecenie make install ............................................................................... 114
Spis treści
7
2.4. Zrozumieć błędy i ostrzeżenia ....................................................................................................... 115
2.4.1. Typowe błędy w plikach Makefile ......................................................................................... 115
2.4.2. Błędy na etapie konfiguracji ................................................................................................... 119
2.4.3. Błędy na etapie kompilacji ..................................................................................................... 120
2.4.4. Zrozumieć błędy kompilatora ............................................................................................... 124
2.4.5. Zrozumieć ostrzeżenia kompilatora ...................................................................................... 126
2.4.6. Zrozumieć błędy programu łączącego .................................................................................. 138
2.5. Podsumowanie ................................................................................................................................ 140
2.5.1. Narzędzia użyte w tym rozdziale .......................................................................................... 140
2.5.2. Materiały dostępne w internecie ............................................................................................ 141
Rozdział 3.
Szukanie pomocy ........................................................................................................ 143
3.1. Wprowadzenie ................................................................................................................................. 143
3.2. Narzędzia pomocy elektronicznej ................................................................................................. 144
3.2.1. Strona man .............................................................................................................................. 144
3.2.2. Organizacja stron man ........................................................................................................... 145
3.2.3. Przeszukiwanie stron man — narzędzie apropos ................................................................. 149
3.2.4. Poszukiwanie właściwych stron man — polecenie whatis .................................................. 151
3.2.5. Czego należy szukać na stronach man .................................................................................. 152
3.2.6. Kilka szczególnie przydatnych stron man ............................................................................. 153
3.2.7. Narzędzie info projektu GNU .............................................................................................. 155
3.2.8. Przeglądanie stron info ........................................................................................................... 156
3.2.9. Przeszukiwanie stron info ...................................................................................................... 159
3.2.10. Zalecane strony info ............................................................................................................... 160
3.2.11. Narzędzia pomocy uruchamiane na pulpicie ....................................................................... 160
3.3. Pozostałe źródła pomocy ................................................................................................................ 162
3.3.1. Katalog /usr/share/doc ............................................................................................................ 162
3.3.2. Odwołania do innych stron oraz mechanizmy indeksowania ............................................. 163
3.3.3. Zapytania kierowane do pakietów ......................................................................................... 164
8
Spis treści
3.4. Formaty dokumentacji ................................................................................................................... 166
3.4.1. Formaty TeX, LaTeX i DVI ................................................................................................... 166
3.4.2. Format Texinfo ....................................................................................................................... 167
3.4.3. Format DocBook .................................................................................................................... 168
3.4.4. Język HTML ........................................................................................................................... 169
3.4.5. Język PostScript ...................................................................................................................... 171
3.4.6. Format PDF ............................................................................................................................ 173
3.4.7. Język troff ................................................................................................................................ 174
3.5. Źródła informacji w internecie ...................................................................................................... 174
3.5.1. Witryna http://www.gnu.org/ ................................................................................................. 175
3.5.2. Witryna http://SourceForge.net/ ............................................................................................ 175
3.5.3. Witryna projektu The Linux Documentation Project ......................................................... 176
3.5.4. Grupy dyskusyjne Usenet ...................................................................................................... 177
3.5.5. Listy dyskusyjne ...................................................................................................................... 177
3.5.6. Pozostałe fora .......................................................................................................................... 178
3.6. Odnajdywanie informacji o jądrze systemu Linux ....................................................................... 178
3.6.1. Kompilacja jądra ..................................................................................................................... 178
3.6.2. Moduły jądra ........................................................................................................................... 180
3.6.3. Pozostałe źródła dokumentacji .............................................................................................. 182
3.7. Podsumowanie ................................................................................................................................ 182
3.7.1. Narzędzia użyte w tym rozdziale .......................................................................................... 182
3.7.2. Materiały dostępne w internecie ............................................................................................ 183
Rozdział 4.
Edycja i konserwacja plików źródłowych ............................................................. 185
4.1. Wprowadzenie ................................................................................................................................. 185
4.2. Edytor tekstu ................................................................................................................................... 186
4.2.1. Edytor domyślny ..................................................................................................................... 188
4.2.2. Jakich funkcji należy szukać w edytorze tekstu .................................................................... 188
4.2.3. Wielka dwójka — vi oraz Emacs ............................................................................................ 190
Spis treści
9
4.2.4. Vim — udoskonalony edytor vi ............................................................................................. 191
4.2.5. Edytor Emacs .......................................................................................................................... 215
4.2.6. Atak klonów ............................................................................................................................ 227
4.2.7. Podstawowe informacje o kilku edytorach tekstu
z graficznym interfejsem użytkownika ................................................................................. 230
4.2.8. Wymagania pamięciowe ......................................................................................................... 235
4.2.9. Podsumowanie wiadomości o edytorach .............................................................................. 237
4.3. Kontrola wersji ................................................................................................................................ 238
4.3.1. Podstawy kontroli wersji ........................................................................................................ 238
4.3.2. Terminologia obowiązująca w świecie kontroli wersji ........................................................ 240
4.3.3. Narzędzia pomocnicze ........................................................................................................... 243
4.3.4. Podstawy poleceń diff i patch ................................................................................................ 243
4.3.5. Przeglądanie i scalanie zmian ................................................................................................. 247
4.4. Upiększacze i przeglądarki kodu źródłowego ............................................................................... 254
4.4.1. Upiększacze wcięć w kodzie źródłowym .............................................................................. 255
4.4.2. Artystyczny styl narzędzia astyle ............................................................................................ 258
4.4.3. Analiza kodu za pomocą narzędzia cflow .............................................................................. 259
4.4.4. Analiza kodu za pomocą narzędzia ctags ............................................................................... 262
4.4.5. Przeglądanie kodu za pomocą narzędzia cscope ................................................................... 262
4.4.6. Przeglądanie i dokumentowanie kodu za pomocą narzędzia Doxygen .............................. 264
4.4.7. Analiza kodu źródłowego z wykorzystaniem kompilatora .................................................. 266
4.5. Podsumowanie ................................................................................................................................ 268
4.5.1. Narzędzia użyte w tym rozdziale .......................................................................................... 269
4.5.2. Bibliografia .............................................................................................................................. 270
4.5.3. Materiały dostępne w internecie ............................................................................................ 270
Zgłoś jeśli naruszono regulamin