GNU napraviti knjigu - Demystifying Linux Build Automation

Pored pisanja o Linuxu i pisanju kritike i tutorijala o distribucijama i alatima, takođe sam jako uključen u razvoj softvera. Nažalost, 99,9% tog softvera se odvija na Windows platformi.

Imam više od 20 godina iskustva kao C ++, Visual Basic, VB.NET i C # programer, a takođe sam i ruka sa SQL Serverom kao DBA i programerom.

Ono na šta nisam toliko dobro razvijam softver za Linux. To je samo nešto sa čime se nikada nisam zabrinuo. Glavni razlog je to što nakon izrade softvera tokom dana poslednja stvar koju želim da uradim je da sjednem nešto večeri i napišem više softvera.

Očigledno volim tinkering sa skriptom i pisanjem neobično malih programa. To su obično za projekte zasnovane na elektronici na Raspberry PI .

Jedna stvar koju će mnogi programeri na Windows platformi imati problema sa prvim prelaskom na Linux je upoznavanje sa alatima potrebnim za izgradnju i pakovanje aplikacija.

Najjednostavnije vrste aplikacija za razvoj su web aplikacije jer uglavnom ne zahtevaju kompajlirani kod (PHP, Perl, Python), a datoteke su raspoređene na određeno mjesto na web serveru.

Veliki broj aplikacija izgrađenih za Linux razvijaju se koristeći C, C ++ ili Python. Sastavljanje pojedinačnog C programa je relativno lako, ali kada vam je potrebno da složite više C programa sa više zavisnosti stvari postaju malo teže.

GNU Make je alat za skripte za automatizaciju automatizacije koji vam pomaže da kompilirate svoje aplikacije više puta i na različite načine. Na primjer, možete nabaviti parametar koji će u zavisnosti od vrijednosti sastaviti aplikaciju koja koristi 64-bitni ili 32-bitni.

Knjigu GNU Make napisao je John Graham-Cumming kako bi pomogao korisnicima GNU Make-a da ostvari čvršći opseg složenosti vezanih za GNU Make.

Knjiga je podeljena u šest poglavlja:

  1. Osnove se vraćaju
  2. Makefile Debugging
  3. Izgradnja i rekonstrukcija
  4. Pitanja i problemi
  5. Pušenje koverte
  6. GNU Standardna biblioteka

Ne verujem da je knjiga zaista namenjena početnicima jer nedostaje određena pojašnjenja koja biste očekivali kada biste naučili novu temu kao što je "Šta je GNU napraviti?", "Kako da kreiram datoteku napraviti?", "Zašto koristi bolje od kompiliranja svakog programa jedan po jedan? " i "Kako da sakupljam programe pomoću GNU Make?". Sve ove oblasti su obuhvaćene u priručniku GNU Make .

Činjenica da se prvo poglavlje naziva "Osvjećena osnova", za razliku od "Osnove" jasno pokazuje da se od vas očekuje da se osnuje tema pre nego što počnete.

Prvo poglavlje pokriva sve osnove kao što su upotreba varijabli, okruženja koje koriste komande i okruženje $ (Shell). Kako se poglavlje pomera, uđete u predmet poređenja, liste i korisnički definisane funkcije.

Ako koristite GNU Make još malo, ali još uvek ne smatrate se ekspertom, postoje neki saveti i saveti koji će vam pomoći da razumete određene intricacies koje možda nisu odmah vidljive.

Drugo poglavlje će biti bogoslužni za one koji pokušavaju da zamene greške u pisanju scenarija. Odeljak "Makefile Debugging" je pun odličnih saveta i saveta za otklanjanje Makefila i uključuje sekcije o štampanju varijabilne vrednosti i čak odbacivanje vrednosti svake promenljive. Dalje u poglavlje, postoji vodič za GNU Debugger koji možete koristiti za korake kroz skripte.

Treće poglavlje uključuje primere makefila, ali više od toga vam pokazuje kako kreirati Makefile koje možete pokrenuti iznova i iznova.

"Stvari i problemi" razmatraju razlike između određenih izraza kao što su = i: =, i ifndef i? =.

Našao sam kako sam išao dalje kroz knjigu jer zato što ne aktivno pokušavam da koristim GNU-ovu Mariju i zato što je moje znanje na vrlo osnovnom nivou, neki od predmeta su išli mnogo nad mojom glavom.

Do trenutka kada sam došao do poglavlja "Guranje koverte", oči su me malo zagrizle.

Moj glavni rezime, ako sam morao da sumiram ovu knjigu, je da autor jasno zna svoje stvari i pokušao je prenijeti što više informacija.

Problem je u tome što ponekad kada stručnjak iz predmeta pokušava nešto da napiše, oni imaju ovo "oh, lako, sve što treba da uradiš je ..." aura o njima.

Gumeni pečat na mojim zadnjim vratima prošao je prošle nedelje i kao što sam samo nekoliko godina pozvao kompaniju koja je ugradila jer je i dalje u garantnom roku.

Dama na telefonu je rekla: "Oh, to je u redu, poslaću ti novi pečat".

Rekao sam: "Da li moram sami da ga uklonim? Da li je to nešto što mogu da uradim".

Odgovor je bio: "Sigurno možeš, sve što moraš da uradiš je da skineš vrata, stegneš pečat i vratiš vrata".

Sada je moja trenutna misao bila "woah, prevucite malo tamo, skinite vrata?!?". Nisam kvalifikovan da uklonim vrata, uklopim pečat i vratim vrata. To ostavljam stručnjacima.

Uz ovu knjigu osećam da vam treba druga knjiga i određeno iskustvo u pisanju Makefila pre nego što vam bude korisno.

Mislim da su saveti, saveti i znanje pomogli nekim ljudima da kažu "Oh, pa zato to radi" ili "Nisam shvatio da to možete učiniti na taj način".

Zbog toga je moja procena da biste trebali kupiti ovu knjigu ako tražite pojašnjenje ili više srednjih znanja za napredna znanja o GNU Make, ali to nije knjiga za početnike.