GNU Make Book - праясненнях Linux аўтаматызацыі зборкі

Як пісаць пра Linux і пісаць агляды і навучальныя дапаможнікі па разьмеркаваных і інструментаў я таксама прымаў актыўны ўдзел у распрацоўцы праграмнага забеспячэння. На жаль, 99,9% ад гэтай распрацоўкі праграмнага забеспячэння адбываецца на платформе Windows.

У мяне ёсць больш чым 20-гадовы досвед працы ў якасці C ++, Visual Basic, VB.NET і C # распрацоўшчык і я таксама мазок рука з SQL Server і як DBA і распрацоўніка.

Тое, што я не так добра гэта распрацоўка праграмнага забеспячэння для Linux. Гэта як раз тое, што я сапраўды ніколі не надакучыла. Асноўная прычына заключаецца ў тым, што пасля распрацоўкі праграмнага забеспячэння на працягу дня апошняе, што я хачу зрабіць, гэта сядзець па вечарах пісаць больш праграмнае забеспячэнне.

Я, відавочна, як майстраваць з дапамогай сцэнарыяў і напісання няцотным невялікі праграмы. Яны, як правіла , на аснове электронікі праектаў на Raspberry PI .

Адна рэч, што многія распрацоўшчыкі на платформе Windows, будуць мець праблемы з тым, калі яны першы перайсці на Linux з'яўляецца вывучэнне інструментаў, неабходных для стварэння і прымянення пакетаў.

Да самых простым тыпам прыкладання для распрацоўкі вэб прыкладання, таму што, як правіла, яны не патрабуюць скампіляванага кода (PHP, Perl, Python) і файлы разгорнутыя ў пэўным месцы на вэб-серверы.

Вялікая колькасць прыкладанняў, створаных для Linux распрацоўваюцца з выкарыстаннем C, C ++ або Python. Складанне адзінай праграмы C адносна лёгка, але калі вам трэба сабраць шэраг праграм C з некалькімі залежнасцямі рэчаў становіцца крыху больш складана.

GNU Make з'яўляецца сцэнары інструмента аўтаматызацыі зборкі, якая дазваляе кампіляваць прыкладання зноў і зноў і па-рознаму. Напрыклад, вы можаце паставіць параметр, які ў залежнасці ад значэння будзе кампіляваць прыкладання з выкарыстаннем 64-бітнай або 32-бітнай.

Кніга GNU Make была напісана Джонам Грэмам-Камінг, каб дапамагчы карыстальнікам GNU Make атрымаць больш трывалую хватку складанасцяў, звязаных з GNU Make.

Кніга падзелена на шэсць частак:

  1. асновы Revisited
  2. Makefile Debugging
  3. Будаўніцтва і аднаўленне
  4. Пасткі і праблемы
  5. штурхае канверт
  6. GNU Make Standard Library

Я не веру, што гэтая кніга сапраўды накіравана на пачаткоўцаў, таму што не хапае некаторых удакладненняў, якія можна чакаць пры вывучэнні новага прадмета, такія як «Што такое GNU Make?», «Як стварыць файл Make?», «Чаму выкарыстоўвае зрабіць лепш, чым складанне кожнай праграмы адзін за адным? » і «Як кампіляваць праграмы, якія выкарыстоўваюць GNU Make?». Усе гэтыя прадметныя вобласці пакрытыя Кіраўніцтва па GNU Make .

Той факт, што першая кіраўнік называецца «Асновы Revisited» у адрозненне ад «Асновы» ясна паказвае, што вы павінны мець зазямленне ў прадмеце, перш чым пачаць.

Першая кіраўнік ахоплівае ўсе асновы, такія як выкарыстанне зменных, асяроддзяў, якія выкарыстоўваюцца каманд і навакольнага асяроддзя $ (Shell). Як кіраўнік рухаецца на вас трапіць у прадмет параўнання, спісы і вызначаныя карыстальнікам функцыі.

Калі вы выкарыстоўвалі GNU Make на некаторы час, але да гэтага часу не лічыце сябе экспертам ёсць некаторыя добрыя парады і падказкі, якія дапамогуць вам зразумець некаторыя тонкасці, якія не могуць быць адразу.

У другой чале будзе знаходкай для тых з вас, хто спрабуе перахопу памылак у скрыптах. Раздзел «Makefile Debugging» поўны выдатных падказак і саветаў для адладкі Makefiles і ўключае ў сябе раздзелы па друку значэнняў зменных і нават скідаць значэнне кожнай зменнай. Далей у гэтым раздзеле, ёсць кіраўніцтва да GNU Debugger, які вы можаце выкарыстоўваць, каб прайсці праз скрыпты.

Трэцяя кіраўнік ўключае ў сябе прыклад мейкфайлы, але больш, чым гэта паказвае вам, як стварыць Makefiles, што вы можаце запусціць зноў і зноў.

«Пасткі і праблемы» глядзіць на адрозненні паміж некаторымі тэрмінамі, такімі як = і: = і IfNDef і =.

Я знайшоў, як я пайшоў далей па кнізе, таму што я не актыўна спрабуюць выкарыстоўваць GNU Make і таму, што мае веды на самай базавым узроўні, некаторыя з прадмета прайшло вельмі шмат над маёй галавой.

Да таго часу, калі я дабраўся да «штурхаючы Канверт» кіраўніка мае вочы пацьмянелі некалькі.

Маё галоўнае рэзюмэ, калі я павінен быў падвесці вынік гэтай кнігі з'яўляецца тое, што аўтар выразна ведае сваю справу і спрабаваў перадаць як мага больш інфармацыі, наколькі гэта магчыма.

Праблема заключаецца ў тым, што часам, калі эксперт прадмет спрабуе нешта запісвае яны гэта «аб яго лёгка, усё, што вам трэба зрабіць, гэта ....» аўра пра іх.

Гумовае ўшчыльненне на маіх дзвярэй задняй выйшаў на мінулым тыдні, і, як гэта ўсяго толькі некалькі гадоў, я назваў кампанію, якая адпавядала яго, як ён усё яшчэ на гарантыі.

Дама па тэлефоне сказала: «О, што гэта нармальна, я пашлю вам новае ўшчыльняльнае кальцо з».

Я сказаў: «О, я павінен адпавядаць яго сам? Гэта тое, што я магу зрабіць».

Адказ быў «Вядома, вы можаце, усё, што вам трэба зрабіць, гэта зняць дзверы, усталюйце ўшчыльненне і паставіць дзверы назад».

Цяпер мае імгненная думка было «ўва, пераматаць трохі ёсць. Зняць дзверы?!?». Я не кваліфікаваны, каб зняць дзверы, усталюйце ўшчыльненне і ўсталюйце дзверы. Я пакіну гэта экспертам.

З дапамогай гэтай кнігі, я адчуваю, што вам трэба яшчэ адну кнігу і пэўную колькасць вопыту напісання Makefiles, перш чым вы знойдзеце яго карысным.

Я думаю, падказкі, парады і веды, атрыманыя дапамагло б некаторыя людзі кажуць: «О, дык гэта тое, чаму гэта робіць гэта" або "я не разумею, што вы маглі б зрабіць гэта такім чынам".

Таму мая ацэнка з'яўляецца тое, што вы павінны купіць гэтую кнігу, калі вы шукаеце тлумачэнне або больш ад сярэдняга да прасунутага веды па GNU Make, але гэта не кніга для пачаткоўцаў.