Libri GNU Make - Demystifying Linux Build Automation

Si dhe shkrimi në lidhje me Linux dhe shkruar komente dhe mësime rreth shpërndarjeve dhe mjeteve, unë jam gjithashtu shumë i përfshirë në zhvillimin e softuerit. Për fat të keq, 99.9% e zhvillimit të softuerit zhvillohet në platformën Windows.

Unë kam mbi 20 vjet eksperiencë si një zhvillues C ++, Visual Basic, VB.NET dhe C # dhe unë jam gjithashtu një dorë me SQL Server si një DBA dhe një zhvillues.

Ajo që nuk jam aq e mirë është të zhvilloj softuer për Linux. Është diçka që kurrë nuk kam brengosur me të vërtetë. Arsyeja kryesore është se pas zhvillimit të softuerit gjatë ditës, gjëja e fundit që unë dua të bëj është të uleni rreth një mbrëmjeje me shkrim më shumë programe.

Unë padyshim më pëlqen të ngatërrohem me shkrimin dhe shkrimin e programit të çuditshëm të vogël. Këto janë zakonisht për projektet elektronike të bazuara në Mjedër PI .

Një gjë që shumë zhvillues në platformën e Windows do të kenë vështirësi me të parë kur të kalojnë në Linux është duke mësuar rreth mjeteve të nevojshme për të ndërtuar dhe paketuar aplikacione.

Deri tani, lloji më i lehtë i aplikimit për t'u zhvilluar janë aplikacionet në ueb, sepse zakonisht nuk kërkojnë kodin e përpiluar (PHP, Perl, Python) dhe dosjet vendosen në një vend të caktuar në web server.

Një numër i madh i aplikacioneve të ndërtuara për Linux janë zhvilluar duke përdorur C, C ++ ose Python. Përpilimi i një programi të vetëm C është relativisht i lehtë, por kur duhet të përpiloni një numër programesh C me varësi të shumta, gjërat bëhen pak më të ndërlikuara.

GNU Make është një mjet i shkruar i automatizimit që ju ndihmon të hartoni aplikacionet tuaja përsëri dhe përsëri dhe në mënyra të ndryshme. Për shembull, mund të jepni një parametër i cili në varësi të vlerës do të përpilojë një aplikacion duke përdorur 64-bit ose 32-bit.

Libri i GNU Make është shkruar nga John Graham-Cumming për të ndihmuar përdoruesit e GNU Make të marrin një kontroll më të fortë të kompleksiteteve që lidhen me GNU Make.

Libri është i ndarë në gjashtë kapituj:

  1. Bazat shqyrtohen
  2. Debugging Makefile
  3. Ndërtimi dhe rindërtimi
  4. Grackat dhe Problemet
  5. Shtytja e Zarfës
  6. GNU Bëni Bibliotekën Standarde

Unë nuk besoj se libri ka të bëjë me fillestar sepse nuk ka sqarime të caktuara që ju do të prisni kur të mësoni një lëndë të re si "Çfarë është GNU Make?", "Si mund të krijoj një skedar?", "Pse është duke përdorur më mirë se hartimi i çdo programi një nga një? " dhe "Si mund të përpiloni programe duke përdorur GNU Make?". Të gjitha këto fusha janë të mbuluara në manualin e GNU Make .

Fakti që kapitulli i parë quhet "The Basics Revisited" në krahasim me "The Basics" tregon qartë se ju pritet të keni një argumentim në lëndën para se të filloni.

Kapitulli i parë mbulon të gjitha bazat siç janë përdorimi i variablave, mjediset e përdorura nga komandat dhe mjedisi $ (Shell). Ndërsa kapitulli lëviz, ju merrni në temën e krahasimit, listave dhe funksioneve të përcaktuara nga përdoruesit.

Nëse keni përdorur GNU Make për një kohë të shkurtër, por nuk e konsideroni ende një ekspert, ekzistojnë disa lëkure dhe këshilla të këndshme që do t'ju ndihmojnë të kuptoni ndërlikime të caktuara që mund të mos jenë menjëherë të dukshme.

Kapitulli i dytë do të jetë një dhuratë nga perëndia për ata prej jush që kanë qenë duke u përpjekur për të grumbulluar gabime në shkrimet e krijuara. Seksioni "Makefile Debugging" është plot me lëkime të shkëlqyera dhe këshilla për debugimin e Makefiles dhe përfshin seksione për shtypjen e vlerave të ndryshueshme dhe madje edhe uljen e vlerës së çdo ndryshoreje. Më tej në kapitullin, ekziston një udhëzues për GNU Debugger që mund të përdorni për të kaluar nëpër skripta.

Kapitulli i tretë përfshin shembuj makefiles por më shumë se kjo ju tregon se si të krijoni Makefiles që ju mund të kandidojë përsëri dhe përsëri.

"Grackat dhe Problemet" shikon dallimet midis termave të caktuara të tilla si = dhe: =, dhe ifndef dhe? =.

Kam gjetur ndërsa shkova më tutje përmes librit se për shkak se nuk po përpiqem ta përdor GNU Make-in dhe sepse njohuria ime është në një nivel shumë themelor, disa nga lëndët kanë shkuar shumë mbi kokën time.

Me kalimin e kohës në kapitullin "Shtyja zarfin" sytë e mi u mbuluan disi.

Përmbledhja ime kryesore, në qoftë se unë duhet ta përmbledhim këtë libër, është se autori e di qartë sendet e tij dhe është përpjekur të kalojë sa më shumë informacion që është e mundur.

Problemi është se nganjëherë kur një ekspert i lëndës përpiqet të shkruajë diçka, ata kanë këtë "oh e lehtë, të gjithë ju duhet të bëni është ...." aura rreth tyre.

Vula e gomës në derën time të pasme erdhi javën e kaluar dhe pasi është vetëm disa vjet e vjetër e kam quajtur kompaninë që e ka pajisur atë siç është akoma në garanci.

Gruaja në telefon tha, "oh kjo është në rregull, unë do t'ju dërgoj një vulë të re jashtë".

I thashë: "Oh, duhet të përshtatem vetë, është diçka që unë mund të bëj".

Përgjigjja ishte: "Sigurisht që mundeni, të gjithë duhet të bëni është të hiqni derën, të vendosni vulën dhe të vendosni derën përsëri".

Tani mendimi im i menjëhershëm ishte "woah, kthehuni pak atje, hiqni derën!?". Unë nuk jam i kualifikuar për të hequr një derë, për të montuar një vulë dhe për ta rregulluar derën. E lë këtë tek ekspertët.

Me këtë libër, ndjej që ju nevojitet një libër tjetër dhe një sasi të caktuar të përvojës me shkrim Makefile para se ta gjeni të dobishme.

Unë mendoj se lë të kuptohet se këshillat, këshillat dhe njohuritë e siguruara do të ndihmonin disa njerëz të thonë "Oh, kështu që është arsyeja pse kjo e bën këtë" ose "nuk e kuptoja se mund ta bënit në atë mënyrë".

Vlerësimi im është që ju të blini këtë libër nëse kërkoni sqarime ose më shumë njohuri të avancuara për GNU Make por kjo nuk është një libër për fillestarët.