ලිනක්ස් විධාන - යුනික්ස් අණ

make - GNU වැඩසටහන් වැඩසටහන් සමූහයක් පවත්වාගෙන යාම සඳහා උපයෝගී කර ගනී

සාරාංශය

[ -f makefile ] [විකල්පය] ... ඉලක්කය ...

අවවාදයයි

මෙම පිටුව GNU හි ඇති ලේඛන වල සාරාංශයකි . GNU ව්යාපෘතිය NROF භාවිතා නොකරන නිසා එය වරින් වර යාවත්කාලීන වේ. සම්පුර්ණ, වත්මන් ප්රලේඛනය සඳහා, Texinfo මූලාශ්ර file make.texinfo වලින් සෑදී ඇති Info file make.info වෙත යොමුවන්න.

විස්තර

පරිශිලක උපයෝගීතාවයේ අරමුණ නම්, විශාල වැඩසටහනක වැඩසටහන් නැවත සකස් කරගත යුතු බවත්, ඒවා නැවත සංයුක්ත කිරීම සඳහා විධාන නිකුත් කිරීමටත් ස්වයංක්රීයව තීරණය කිරීමයි. රිචඩ් ස්ටෝල්මන් සහ රෝලන්ඩ් මැක්ග්රා විසින් ලියන ලද අත්පොත GNU ක්රියාවට නැංවීම මෙම අත්පොත විස්තර කරයි. අපගේ උදාහරණ බොහෝ විට බහුලව දක්නට ලැබෙන C වැඩසටහන් වේ, නමුත් ඔබට compiler සේවාදායකය මඟින් shell විධානයකින් ක්රියාත්මක කළ හැකි ඕනෑම ක්රමලේඛයක් සමඟ භාවිතා කළ හැකිය. ඇත්ත වශයෙන්ම, නිෂ්පාදනයට වැඩසටහන් වලට සීමා නොවේ. අනිත් අය වෙනස් කරන විට, සමහර ලිපි ගොනු ස්වයංක්රීයව යාවත්කාලීන කළ යුතු ඕනෑම කාර්යයක් විස්තර කිරීමට එය භාවිතා කළ හැකිය.

භාවිතා කිරීම සඳහා සූදානම් වීමට, ඔබේ වැඩසටහනේ ඇති සම්බන්ධතා විස්තර කරන මැක්ෆයිල් ලෙස ගොනුවක් ලියන්න, සහ එක් එක් ගොනුව යාවත්කාලීන කිරීම සඳහා විධානයන් නියම කරයි. වැඩසටහනක දී, සාමාන්යයෙන් වින්ඩෝස් ගොනු සම්පාදනය කිරීමෙන් ව්යාජ ගොනු ගොනුව මඟින් වත්මන් ගොනු වලින් යාවත්කාලීන වේ.

සුදුසු මූනෆීල්ඩ් එකක් පවතින පසු, ඔබ මූලාශ්ර ගොනු වෙනස් කරන සෑම අවස්ථාවකම, මෙම සරල shell විධානය:

කරන්න

අවශ්ය සියළු ප්රතිසමරණයන් ඉටු කිරීමට ප්රමාණවත්ය. මෙම වැඩසටහන මඟින් makefile දත්ත පදනම සහ ගොනු යාවත්කාලීන කල යුතු කුමන කුමන තීන්දු තීරණය කිරීමට ෆයිල්ස් ඔෆ් ෆයිල්ස් හි අවසන් වරට වෙනස් කරන වේලාවන් භාවිතා කරයි. එම එක් එක් ගොනු සඳහා, දත්ත ගබඩාවේ සටහන් කර ඇති විධානයන් නිකුත් කරයි.

නම සාමාන්යයෙන් වැඩසටහනක් වන අතර ඉලක්ක හෝ නම් යාවත්කාලීන කිරීම සඳහා නිෂ්පාදකයාගේ විධානයන් ක්රියාත්මක කරන්න. නැත -f විකල්පය නොමැති නම්, එම පිළිවෙල තුල makefiles GNUmakefile , makefile සහ Makefile සොයනු ඇත.

සාමාන්යයෙන් ඔබ ඔබේ makefile හෝ makefile හෝ Makefile අමතන්න. (අපි රෙකමදාරු කිරීම නිර්දේශ කිරීමක් ලෙස අපි නිර්දේශ කරමු, එය නාමාවලි නාමාවලිය ආරම්භයේ ආසන්නව දක්නට ලැබෙන බැවින්, README වැනි අනෙකුත් වැදගත් ගොනු අසලයි.) බොහෝමයක් makefiles සඳහා GNUmakefile පරීක්ෂණය කර ඇති පළමු නම. ඔබ විසින් GNU නිෂ්පාදනයට විශේෂිත වූ නිෂ්පාදනයක් තිබේ නම්, මෙම නම භාවිතා කළ යුතු අතර, අනෙකුත් අනුවාදයන් විසින් තේරුම් නොගත යුතුය. ප්රමිතිය '-' නම් සම්මත ආදානය කියවනු ලැබේ.

ඉලක්කය අවසන් වරට වෙනස් කරන ලද පසුව වෙනස් කර ඇති පූර්වගාමී ගොනු මත රඳා පවතී නම්, ඉලක්කය යාවත්කාලීන කිරීම හෝ ඉලක්කය නොපවතී නම්.

විකල්ප

-බී

-එම්

අනෙකුත් විකල්පයන් සමඟ ගැලපෙන පරිදි මෙම විකල්පයන් නොසලකා හරිනු ලැබේ.

සී. ඩී

මෙනේක්සිලි කියවීම හෝ වෙනත් ඕනෑම දෙයක් කිරීම පෙර බහලුම් ඩිරෙක්ට වෙනස් කරන්න. බහු-C විකල්පයන් විශේෂිත නම්, එක් එක් පෙරට සාපේක්ෂව අර්ථකථනය කර ඇත: -C / C ආදිය සී -සී / ආදය. මෙය සාම්ප්රදායික මිථ්යා ආයාචන සමග භාවිතා වේ.

-d

සාමාන්ය සැකසීමට අමතරව නිදොසීමේ තොරතුරු මුද්රණය කරන්න. ප්රේරකයේ තොරතුරු පෙරදැරි කරගනී ඇත්තේ කුමන ලිපිගොනුදැයි සලකා බලමින්ද, ගොනු-කාලවල් සැසඳීම හා ඒවායේ ප්රතිඵලය සමඟ, ඒවා නැවත සකස් කළ යුතු කුමන ප්රතිඵල සමඟද, නිශ්චිත රීති සලකා බලනු ලබන හා ඒවා භාවිතා කරනු ලැබේ. කුමක් කරන්න ද.

-ඊ

පරිසරවල සිට විචල්යයන් වෙතින් වෙනස්කම් වලට අනුව වෙනස්කම් ලබා ගත හැකිය.

-f ගොනුව

ගොනුවක් ලෙස භාවිතා කරන්න.

-මම

ගොනු ප්රතිස්ථාපනය කරන ලද විධානයන් තුල සියළුම දෝෂ නොසලකා හැරීම.

-මම

ඇතුලත් කළ makefiles සඳහා සෙවිය යුතු ඩිරෙක් ඩිරෙක්ට් නියම කරයි. බහලුම් කීපයක් කිහිපයක් නියම කිරීම සඳහා -I විකල්ප කිහිපයක් භාවිතා කර තිබේ නම්, බහලුම්වල නිශ්චිතව දැක්වෙන පිළිවෙලෙහි පිරික්සනු ලැබේ. සාදන ලද අනෙකුත් ධජයන්ට තර්ක මෙන් නොව, -I කොඩි වලින් දෙන ලද බහලුම් කොඩියට පසු සෘජුවම පැමිණිය හැකිය: -ඉල්ලීම සඳහා අවසර ලබා දීම, මෙන්ම -I ඩිරා. සී ප්රොටෝකෙස්සර්ගේ -I ධජය සමඟ අනුකූල වීම සඳහා මෙම රීතිය අනුමත කර ඇත.

-j රැකියා

එකවර ක්රියාත්මක කිරීමට ඇති කාර්යයන් (විධාන) නියම කරනු ලබයි. එක් -J විකල්පයකට වඩා වැඩි නම්, අවසන් වරට ඵලදායී වේ. තර්කයකින් තොරව -j විකල්පය ලබා දෙන්නේ නම්, සිදුකිරීමට හැකි වන අතරතුරදී සිදු කළ හැකි රැකියා සංඛ්යාව සීමා නොකරනු ඇත.

- කි

දෝෂයක් ඇති විට හැකි තරම් ඉදිරියට යන්න. අසාර්ථක වූ ඉලක්කය සහ එය මත යැපෙන ඒවා ප්රතිෂ්ඨාපනය කළ නොහැකි වුවද, මෙම ඉලක්කවල අනෙකුත් පරායත්තතා සියල්ලම සකසා ගත හැකිය.

-එම්

- බරයි

වෙනත් කාර්යයන් ක්රියාත්මක වන විට, නව සේවා කිසිවක් (විධාන) ආරම්භ නොකළ යුතු අතර බඩු සාමාන්යය අවම වශයෙන් load (floating-point number) සඳහන් වේ. කිසිදු විවාදයකින් තොරව පූර්ව බර සීමාවක් ඉවත් කරයි.

-n

ක්රියාත්මක කරනු ලබන නියෝග මුද්රණය කරන්න, නමුත් ඒවා ක්රියාත්මක නොකරන්න.

-o ගොනුව

ගොනු රෙකෝඩය එහි රඳා පවතින ප්රමාණයට වඩා පැරණි නොවන අතර, ගොනුවේ වෙනස්කම් නිසා යමක් ප්රතිස්ථාපනය නොකරන්න. අනිවාර්යයෙන්ම ගොනුව ඉතා පැරණි ලෙස සලකනු ලබන අතර එහි නීති නොසලකා හරියි.

-ප

දත්ත පදනම් කියවීමෙන් (රීති සහ විචල්ය අගයන්) මුද්රණය කරන්න. සාමාන්ය පරිදි හෝ වෙනත් ආකාරයකින් නියම කරනු ලැබේ. මෙය -v ස්විචය මඟින් ලබාදෙන ලද අනුවාද තොරතුරු මුද්රණය කරයි (පහත බලන්න). ඕනෑම ගොනු නැවත සැකසීමට උත්සාහ නොකර දත්ත පද මුද්රණය කිරීම සඳහා, -p -f / dev / null භාවිතා කරන්න.

- q

'' ප්රශ්න මාතය ''. කිසිම විධානයක් ක්රියාත්මක නොකරන්න, හෝ කිසිවක් මුද්රණය නොකරන්න; නිශ්චිත ඉලක්ක දැනටමත් යාවත්කාලීන වන විටදී, නිශ්ශබ්දතාවයකින් තොරව ආපසු හැරවිය යුතුය.

-ආ

සවිස්තරාත්මක නීති රීති භාවිතයෙන් ඉවත් කිරීම. සුෆික්ස් රීති සඳහා උපසර්ක්ෂක පෙරනිමි ලැයිස්තුව ද පැහැදිලි කරන්න.

-ස

නිහඬ ක්රියාවලිය; ඒවා ක්රියාත්මක කරන විට විධානයන් මුද්රණය නොකරන්න.

- එස්

-k විකල්පයේ බලපෑම අවලංගු කරන්න. මෙය කිසි විටෙකත් අවශ්ය නොවේ. MAKEFLAGS මඟින් ඉහළ මට්ටමේ සාදන ලද හෝ KK ඔබේ MAKEFLAGS හි ඔබේ MOKEFLAGS හි සඳහන් කළ හැක.

-ටී

ලිපිගොනු ස්පර්ශ කරන්න (ඒවා සැබැවින්ම වෙනස් නොකොට ඒවා යාවත්කාලීන කරන්න) ඒවායේ විධානයන් ක්රියාත්මක කිරීම වෙනුවට. මෙය භාවිතා කිරීම සඳහා අනාගත ආයාචනයන් වැලැක්වීම සඳහා විධානයන් සිදු කරන බව පෙන්වීමට මෙය යොදා ගනී.

-v

වැඩ සටහනේ පිටපත මුද්රණය කිරීම, ප්රකාශන හිමිකම, කර්තෘ ලැයිස්තුවක් සහ වගකීමක් නොමැති බවට දැන්වීමක් මුද්රණය කරන්න.

වයි

වෙනත් සැකසීම් පෙර හා පසු වැඩ කරන බහලුම අඩංගු පණිවිඩයක් මුද්රණය කරන්න. විචල්යකාරී විධාන විධාන වල සංකීර්ණ කැදැල්ලෙන් දෝෂ සොයා යාම ප්රයෝජනවත් විය හැකිය.

-W ගොනුව

ඉලක්කය ගොනුව හුදෙක් වෙනස් කර ඇත. ඔබ විසින් -n ධජය සමඟ භාවිතා කරන විට, එම ගොනුව නවීකරණය කිරීමට සිදුවන්නේ කුමක් ද යන්න පෙන්නුම් කරයි. Without -n , එය ධාවනය කිරීමට පෙර ලබාදෙන ගොනුව මත ස්පර්ශක විධානයක් ක්රියාත්මක කිරීම මෙන් ම , වෙනස් කිරීම කාලය වෙනස් කිරීම සිදු කරනුයේ හැරෙන්නට වෙනස් කිරීම පමණි.