GNU Make Book - Demystifikácia systému Linux Build Automation

Okrem písania Linuxu a písania recenzií a výučbov o distribúciách a nástrojoch som tiež veľmi zapojený do vývoja softvéru. Bohužiaľ, 99,9% tohto vývoja softvéru prebieha na platforme Windows.

Mám viac ako 20 rokov skúseností ako vývojár C ++, Visual Basic, VB.NET a C # a som takisto šikovná ruka so serverom SQL ako aj DBA a vývojár.

To, v čom nie som taký dobrý, je vývoj softvéru pre Linux. Je to len niečo, na čo som sa nikdy neobťažoval. Hlavným dôvodom je, že po vývoji softvéru počas dňa posledná vec, ktorú chcem urobiť, je sedieť okolo večera písať viac softvéru.

Samozrejme, že sa mi páči skriptovanie a písanie zvláštneho malého programu. Tie sú zvyčajne pre elektronické projekty na Raspberry PI .

Jedna vec, ktorú mnohí vývojári na platforme Windows budú mať problémy pri prvom prechode do systému Linux, sa dozvie o nástrojoch potrebných na zostavenie a balík aplikácií.

Zďaleka najjednoduchší typ aplikácie na vývoj sú webové aplikácie, pretože vo všeobecnosti nevyžadujú kompilovaný kód (PHP, Perl, Python) a súbory sú nasadené na určené miesto na webovom serveri.

Veľký počet aplikácií vytvorených pre Linux je vyvinutý pomocou C, C ++ alebo Pythonu. Zostavovanie jedného programu C je relatívne jednoduché, ale keď potrebujete zostaviť niekoľko programov C s viacerými závislosťami, veci sa trochu zložitejšie.

GNU Make je skriptovací nástroj na vytváranie automatizácie, ktorý vám pomôže zostaviť vaše aplikácie znova a znova rôznymi spôsobmi. Napríklad môžete dodať parameter, ktorý v závislosti od hodnoty kompiluje aplikáciu pomocou 64-bitových alebo 32-bitových.

GNU Make kniha bola napísaná John Graham-Cumming pomôcť používateľom GNU Make získať pevnejšie priľnavosť zložitosti spojené s GNU Make.

Kniha je rozdelená do šiestich kapitol:

  1. Základy Revisited
  2. Makefile ladenie
  3. Budovanie a rekonštrukcia
  4. Úskalia a problémy
  5. Stlačenie obálky
  6. GNU Make Standard Library

Nemyslím si, že kniha je naozaj zameraná na začiatočníkov, pretože chýba určité objasnenia, ktoré by ste očakávali pri učení sa nového predmetu ako "Čo je to GNU?", "Ako vytvorím súbor?", "Prečo sa používa urobiť lepšie ako zostavovanie jednotlivých programov jeden po druhom? " a "Ako môžem kompilovať programy pomocou GNU Make?". Všetky tieto oblasti sú obsiahnuté v manuáli GNU Make .

Skutočnosť, že prvá kapitola sa nazýva "Základy revízie" na rozdiel od "Základy", jasne ukazuje, že od vás by sa malo očakávať, že v predmete bude mať základy.

Prvá kapitola sa zaoberá všetkými základnými faktami, ako je použitie premenných, prostredia používané príkazmi a prostredie $ (Shell). Po prechode kapitoly sa dostanete do predmetu porovnávania, zoznamov a užívateľom definovaných funkcií.

Ak používate GNU Make na chvíľu, ale ešte sa nepovažujete za odborníka, nájdete niekoľko pekných rád a tipov, ktoré vám pomôžu pochopiť určité komplikovanosti, ktoré nemusia byť okamžite zrejmé.

Druhá kapitola bude pre tých z vás, ktorí sa snažia zachytávať chyby vo vytváraní skriptov, bohatstvom. Oddiel "Odstraňovanie makefile" je plný vynikajúcich tipov a tipov na ladenie súborov Makefiles a obsahuje časti o tlačení hodnôt premenných a dokonca aj vylúčenie hodnoty každej premennej. Ďalej do kapitoly nájdete sprievodcu GNU Debuggerom, ktorý môžete použiť na prechádzanie skriptmi.

Tretia kapitola obsahuje príklady makefile, ale viac ako to ukazuje, ako vytvoriť makefile, ktoré môžete spustiť znova a znova.

"Úskalia a problémy" sa zameriavajú na rozdiely medzi určitými výrazmi, ako sú = a: =, a ifndef a? =.

Zistil som, že som išiel ďalej v knihe, že preto, že sa aktívne nepoužívam GNU Make, a pretože moje poznatky sú na veľmi základnej úrovni, niektoré témy mi prešli oveľa viac.

V čase, keď som sa dostal do kapitoly "Pushing The Envelope", mi oči mi prešiel.

Môj hlavný prehľad, keby som musel zhrnúť túto knihu, je, že autor jasne vie, čo je, a snažil sa odovzdať čo najviac informácií.

Problém je v tom, že niekedy, keď sa odborník na predmety pokúsi napísať niečo dole, majú to "to je ľahké, všetko, čo musíte urobiť, je ..." aura o nich.

Gumová pečať na zadných dverách vyšla minulý týždeň a keďže je to pár rokov, zavolal som spoločnosť, ktorá ju vybavila, pretože je stále v záruke.

Pani v telefóne povedala: "Ach, to je v poriadku, pošlem ti novú pečať".

Povedal som: "Musím to urobiť sám, je to niečo, čo môžem urobiť?".

Odpoveď bola: "Iste, môžete, všetko, čo musíte urobiť, je vybrať dvere, vložiť pečať a vrátiť dvere späť".

Teraz moje okamžité myslenie bolo "woah, tam trochu vzad, odobrať dvere?!". Nie som kvalifikovaný na odstránenie dverí, zaplombovanie tesnenia a opätovné nasadenie dverí. Ponechám to na odborníkov.

S touto knihou si myslím, že potrebujete inú knihu a určitú skúsenosť s písaním makefile, ako by ste to považovali za užitočnú.

Myslím, že tipy, tipy a poznatky by pomohli niektorým ľuďom povedať "Ach, to je dôvod, prečo to robí" alebo "Neuvedomil som si, že by to mohol urobiť takýmto spôsobom".

Moje hodnotenie je preto, že by ste mali kúpiť túto knihu, ak hľadáte objasnenie alebo viac pokročilých znalostí o GNU Make, ale nie je knihou pre začiatočníkov.