Ang GNU Gihimo nga Libro - Demystifying Linux Build Automation

Ingon man usab ang pagsulat mahitungod sa Linux ug pagsulat sa mga reviews ug mga tutorial mahitungod sa mga distribusyon ug mga himan nga ako usab daghan nga nalambigit sa pagpalambo sa software. Ikasubo, 99.9% niana nga software development nahitabo sa plataporma sa Windows.

Ako adunay kapin sa 20 ka tuig nga kasinatian isip usa ka C ++, Visual Basic, VB.NET, ug C # developer ug ako usab usa ka dab kamot uban sa SQL Server sama sa usa ka DBA ug usa ka developer.

Ang dili nako maayo sa pag-umol sa software alang sa Linux. Usa kini ka butang nga wala gayud nako masinati. Ang nag-unang rason mao nga human sa pagpalambo sa software sa adlaw ang katapusan nga butang nga gusto nakong buhaton mao ang paglingkod sa palibot sa usa ka gabii nga nagsulat sa dugang nga software.

Klaro nga gusto ko nga makig-istorya ug magsulat sa talagsaon nga gamay nga programa. Kini kasagaran alang sa electronics based projects sa Raspberry PI .

Usa ka butang nga daghang mga developers sa Windows nga plataporma adunay kasamok sa diha nga una silang mobalhin ngadto sa Linux mao ang pagkat-on mahitungod sa mga himan nga gikinahanglan aron sa pagtukod ug pag-package sa mga aplikasyon.

Ang labing sayon ​​nga matang sa aplikasyon nga pag-uswag mao ang mga aplikasyon sa web tungod kay sa kasagaran wala sila magkinahanglan sa compiled code (PHP, Perl, Python) ug ang mga file gipadala ngadto sa usa ka dapit sa web server.

Daghang mga aplikasyon nga gitukod alang sa Linux ang naugmad gamit ang C, C ++ o Python. Ang pagpundok sa usa ka programa sa C mao ang sayon ​​apan kon kinahanglan nimo nga pag-compile sa usa ka gidaghanon sa mga programa sa C nga adunay daghang dependensya ang mga butang nga mas makalinga.

Ang GNU Make mao ang usa ka build automation scripting tool nga nagtabang kanimo sa pagtipon sa imong mga aplikasyon pag-usab ug sa lainlaing paagi. Pananglitan, makahatag ka og usa ka parameter nga depende sa bili nga pag-compile sa usa ka aplikasyon gamit ang 64-bit o 32-bit.

Ang GNU Make book gisulat ni John Graham-Cumming aron pagtabang sa mga tiggamit sa GNU Paghimo sa usa ka lig-on nga pagkupot sa mga pagkakalibutan nga may kalabutan sa GNU Make.

Ang libro gibahin ngadto sa unom ka mga kapitulo:

  1. Gibalik ang Mga Sukaranan
  2. Makefile Debugging
  3. Pagtukod ug Pagtukod Pag-usab
  4. Mga Kapeligrohan ug mga Suliran
  5. Giduso ang Sobre
  6. Ang GNU Naghimo sa Standard Library

Dili ko motuo nga ang libro gitumong sa mga nagsugod tungod kay wala kini'y mga klaripikasyon nga imong madahom sa dihang magkat-on og bag-ong subject sama sa "Unsa ang Gihimo sa GNU?", "Unsaon ko paghimo sa usa ka Gumawa og file?", "Nganong ang gigamit ba nga Mas maayo kay sa pagtigum sa matag programa us aka usa? " ug "Unsaon ko paghimo sa mga programa gamit ang GNU Make?". Ang tanan niini nga mga hilisgutan nga mga bahin gitabunan sa GNU Make Manual .

Ang kamatuoran nga ang unang kapitulo gitawag nga "Ang Mga Basihanan nga Giusab" nga sukwahi sa "Ang Mga Sukaranan" tin-aw nga nagpakita nga ikaw gilauman nga makabaton og lintunganay sa hilisgutan sa dili ka magsugod.

Ang unang kapitulo naglakip sa tanan nga mga sukaranan sama sa paggamit sa mga baryable, mga palibot nga gigamit sa mga sugo ug sa $ (Shell) nga palibot. Ingon nga ang kapitulo nagalihok sa imong makuha sa hilisgutan sa pagtandi, mga lista, ug mga gimbut-an nga gipasabut sa tiggamit.

Kon gigamit nimo ang paggamit sa GNU Gwapa sa usa ka diyutay nga panahon apan wala ka pa maghunahuna sa imong kaugalingon nga usa ka eksperto adunay pipila ka mga maayong sugyot ug mga tip nga makatabang kanimo sa pagsabut sa pipila ka mga kalisud nga dili dayon makita.

Ang ikaduha nga kapitulo mahimo nga usa ka dios-dios alang kaninyo nga naningkamot sa pag-lit-ag sa mga sayup sa pagtukod og mga script. Ang seksyon sa "Makefile Debugging" puno sa maayo kaayo nga pahibalo ug mga tips para sa pag-debug sa Makefiles ug naglakip sa mga seksyon sa pag-imprinta nga nagkadaiya nga mga hiyas ug bisan sa pagtangtang sa bili sa matag usa ka variable. Dugang pa sa kapitulo, adunay usa ka giya sa GNU Debugger nga mahimo nimo gamiton sa paglakang pinaagi sa mga script.

Ang ikatulo nga kapitulo naglakip sa panig-ingnan nga makefiles apan labaw pa niana nagpakita kanimo kung unsaon paghimo ang mga Makefiles nga mahimo nimo nga pag-usab-usab.

Ang "Mga Kapeligrohan ug mga Problema" naglantaw sa mga kalainan tali sa pipila nga mga termino sama sa = ug: =, ug ifndef ug? =.

Akong nakit-an samtang nagpadayon ko pinaagi sa libro nga tungod kay dili ko aktibo nga naningkamot sa paggamit sa GNU Make ug tungod kay ang akong kahibalo anaa sa usa ka sukaranan kaayo ang pipila sa mga hilisgutan nga nag-ayo sa akong ulo.

Sa panahon nga ako nakaabot sa "Pushing the Envelope" nga kapitulo ang akong mga mata nagkagisi.

Ang akong nag-unang kasayuran, kung kinahanglan ko nga mahuman kini nga basahon, mao nga ang tagsulat tin-aw nga nasayud sa iyang mga butang ug misulay sa pagpasa sa daghan nga kasayuran kutob sa mahimo.

Ang problema mao nga usahay kung ang usa ka eksperto sa us aka sulud nagsulat sa usa ka butang nga anaa nila kini nga "oh nga sayon ​​ra, ang tanan nga imong buhaton mao ang ...." aura mahitungod kanila.

Ang seal sa goma sa akong pultahan sa likod nakuha sa miaging semana ug tungod kay usa na lang ka tuig ang panuigon, gitawag nako ang kompaniya nga nahiangay niini nga kini anaa pa sa garantiya.

Ang babaye sa telepono miingon, "oh, okay, ipadala ko nimo ang usa ka bag-o nga patik".

Miingon ko "Ah, kinahanglan ba akong mosibo sa akong kaugalingon? Kana ba nga butang nga akong mahimo".

Ang tubag mao ang "Sigurado nga mahimo nimo, ang tanan nga imong buhaton mao ang pagkuha sa pultahan, takdo ang selyo ug ibalik ang pultahan".

Karon ang akong dihadiha nga panghunahuna mao ang "woah, pabalikon ang usa ka diyutay didto, kuhaa ang pultahan?!?". Dili ako kwalipikado sa pagkuha sa usa ka pultahan, pag-seal sa selyo ug pag-usab sa pultahan. Gibilin ko kana sa mga eksperto.

Sa sini nga libro, ginabatyag ko nga nagakinahanglan ka sang isa pa nga libro kag ang pila ka mga kasinatian nga pagsulat sa Makefiles antes mo makita nga mapuslanon.

Sa akong hunahuna ang mga sugyot, mga tip, ug kahibalo nga gihatag makatabang sa pipila ka mga tawo nga moingon "Oh, busa kana ang hinungdan niana" o "Wala ako makaamgo nga mahimo nimo kana nga paagi".

Busa ang akong pagsusi mao nga kinahanglan ka mopalit niini nga libro kon ikaw nangita sa pagklaro o mas intermediate ngadto sa abanteng kahibalo sa GNU Make apan kini dili libro alang sa mga nagsugod.