လုပ် - Linux ကိုစစ်ဌာနချုပ် - Unix စစ်ဌာနချုပ်

အောင် - ကို GNU အစီအစဉ်များအုပ်စုများကိုဆက်လက်ထိန်းသိမ်းထားဖို့ utility ကိုအောင်

အနှစ်ချုပ်

[option ကို] [makefile -f] စေ ... ပစ်မှတ် ...

သတိပေးခြင်း

ဤစာမျက်နှာကိုကို GNU လုပ်၏စာရွက်စာတမ်းများတစ်ခုထုတ်ယူသည်။ သည် GNU စီမံကိန်းကို nroff မသုံးပါဘူးဘာဖြစ်လို့လဲဆိုတော့ကိုယ်ကသာရံဖန်ရံခါ updated ဖြစ်ပါတယ်။ ပြီးပြည့်စုံသော, လက်ရှိစာရွက်စာတမ်းများအဘို့, Texinfo အရင်းအမြစ်ဖိုင် make.texinfo ကနေဖန်ဆင်းတော်သော make.info file အတွက်အင်ဖိုရည်ညွှန်း။

ဖေါ်ပြချက်

အဆိုပါလုပ် utility ကို၏ရည်ရွယ်ချက်မှာကြီးမားတဲ့အစီအစဉ်၏အပိုင်းပိုင်း recompiled နှင့်ထုတ်ပြန်ခံရဖို့လိုအပ်ရာကိုအလိုအလျောက်ဆုံးဖြတ်ရန်ဖြစ်ပါသည် ပညတ်တော်တို့ကို သူတို့အား Windows စနစ်တွင်ရန်။ အဆိုပါလက်စွဲစာအုပ်ရစ်ချတ်အဲ့ဒီနှင့် Roland McGrath ကရေးသားခဲ့သည့်လုပ်၏ကို GNU အကောင်အထည်ဖော်ရေး, ဖော်ပြသည်။ သူတို့အသုံးအများဆုံးများမှာကတည်းကကျွန်ုပ်တို့၏ဥပမာကို C အစီအစဉ်များကိုပြသသော်လည်း, သင်သည်အဘယ်သူ၏ compiler တစ် shell ကို Command ဖြင့် run နိုင်ပါတယ်ဆို programming language ကိုအတူလုပ်ကိုသုံးနိုင်သည်။ တကယ်တော့အစီအစဉ်များမှကန့်သတ်သည်မဟုတ်စေ။ သင်ကအခြားသူတွေကိုပြောင်းလဲရန်အခါတိုင်းအချို့ဖိုင်တွေအခြားသူများထံမှအလိုအလျှောက် update လုပ်ရမည်ဖြစ်သည်ဘယ်မှာမဆိုတာဝန်ကိုဖော်ပြရန်ကြောင့်ကိုသုံးနိုင်သည်။

လုပ်သုံးစွဲဖို့ပြင်ဆင်ထားရန်, သင်ဖိုင်တစ်ခုကိုရေးသားရမည်ဖြစ်သည်သင့်ရဲ့အစီအစဉ်တွင်ဖိုင်များကိုတို့တွင်ဆက်ဆံရေးကိုဖော်ပြထားတယ်သော makefile, နှင့်ပြည်နယ်များဖိုင်တိုင်းကို update လုပ်ပေးခြင်းများအတွက်ပညတ်တို့ကိုခေါ်။ , program တစ်ခုမှာတော့ပုံမှန်အား executable file ကို source file ကိုပြုစုလုပ်အလှည့်နေသောအရာဝတ္ထုဖိုင်များ, ကနေ update လုပ်ဖြစ်ပါတယ်။

တစ်ဦးသင့်လျော်သော makefile ပြီးတာနဲ့အချို့ကိုသင်အရင်းအမြစ်ဖိုင်တွေကိုပြောင်းလဲတစ်ခုချင်းစီကိုအချိန်, ဒီရိုးရှင်းတဲ့ shell ကို command ကိုတည်ရှိ:

အောင်

အားလုံးလိုအပ်သော recompilations ဖျော်ဖြေဖို့အဘို့လောက်ပေ။ အဆိုပါလုပ်အစီအစဉ် makefile ဒေတာအခြေစိုက်စခန်းကိုအသုံးပြုသည်နှင့်ဖိုင်များကို၏နောက်ဆုံး-ပြုပြင်မွမ်းမံကြိမ်မွမ်းမံရန်လိုအပ်သည့်ဖိုင်များ၏ထားတဲ့ဆုံးဖြတ်ရန်။ သူတို့အားဖိုင်များကိုတစ်ခုချင်းစီအတွက်ကဒေတာဘေ့စတှငျမှတျတမျးတငျထားသပညတ်တော်ကိုထုတ်ပြန်ခဲ့သည်။

အောင်အမည်ဖြင့်ပုံမှန်အားဖြင့်တစ်ဦးအစီအစဉ်တစ်ခုဖြစ်သည်ရှိရာတစျခုသို့မဟုတ်ထိုထက်ပိုပစ်မှတ်အမည်များ, ကို update ဖို့ makefile အတွက်ပညတ်တော်တို့ကို ပေး. စီရင်။ အဘယ်သူမျှမ -f option ကိုပစ္စုပ္ပန်ဖြစ်တယ်ဆိုရင်, အဲဒီအမိန့်ထဲမှာ, makefiles GNUmakefile, makefile နှင့် Makefile များအတွက်ကြည့်ရှုမည်ပါစေ။

ပုံမှန်အားဖြင့်သင်သည်သင်၏ makefile makefile သို့မဟုတ် Makefile ဖြစ်စေမခေါ်သင့်ပါတယ်။ (မှန်ထိုကဲ့သို့သော README ကဲ့သို့သောအခြားအရေးကြီးသောဖိုင်များကိုအအနီးတစ် directory ကိုစာရင်း၏အစအဦးအနီးအပါးပြိုင်းပုံပေါ်သောကွောငျ့ကြှနျုပျတို့ Makefile အကြံပြုပါသည်။ ) ပထမဦးဆုံးနာမကိုအမှီ check လုပ်ထား, GNUmakefile အများစု makefiles ဘို့အကြံပြုသည်မဟုတ်။ သင်လုပ်ကို GNU မှတိကျတဲ့သော makefile ရှိပါကထိုနာကိုအသုံးပြုသင့်ပါတယ်, နှင့်လုပ်၏အခြားဗားရှင်းအားဖြင့်နားလည်သဘောပေါက်လိမ့်မည်မဟုတ်ပါ။ makefile ` အကယ်. - 'စံ input ကိုဖတ်ပါဖြစ်ပါတယ်။

ကပစ်မှတ်မတည်ရှိပါဘူးဆိုရင်ပစ်မှတ်နောက်ဆုံးပြင်ဆင်ခဲ့သည်, ဒါမှမဟုတ်ကတည်းကပြုပြင်မွမ်းမံခဲ့ကြကြောင်းလိုအပ်ချက်ဖိုင်တွေပေါ်တွင်မူတည်သည်ဆိုပါက updates များကိုပစ်မှတ်ပါစေ။

ရွေးချယ်စရာများ

-b

-m

အဲဒီ options လုပ်၏အခြားဗားရှင်းတွေနဲ့လိုက်ဖက်တဲ့အဘို့လျစ်လျူရှုနေကြပါတယ်။

-C dir

ပြောင်းလဲလိုက်ပါ က directory dir အဆိုပါ makefiles ဖတ်နေသို့မဟုတ်အရာအားလုံးထက်လုပ်နေတာမီ။ မျိုးစုံ -C ရွေးချယ်စရာသတ်မှတ်ထားသောနေတယ်ဆိုရင်, တစ်ဦးချင်းစီသည်ယခင်တစ်ဦးမှဆွေမျိုးအနက်သည်: -C / -C စသည်တို့ -C / etc မှညီမျှသည်။ ဤသည်ပုံမှန်အားဖြင့်လုပ်၏တဲ့ request ကို invocations နှင့်အတူအသုံးပြုသည်။

-D

ပုံမှန်အပြောင်းအလဲနဲ့အပြင်သတင်းအချက်အလက် debugging Print ။ အဆိုပါဒီဘာဂင်သတင်းအချက်အလက်ဖိုင်-အဆနှိုင်းယှဉ်ခြင်းနှင့်အမှန်တကယ်ဖိုင်များကိုထားတဲ့ရလဒ်တွေလုပ်ဆုံးဖြတ်သည်ဘယ်လိုအရာအားလုံးစိတ်ဝင်စားဖို့ --- သွယ်ဝိုက်စည်းမျဉ်းစည်းကမ်းတွေကိုထည့်သွင်းစဉ်းစားနေကြသည်နှင့်အရာလျှောက်ထားကြသည်သော remade ရောက်ထားရန်လိုအပ်ပါတယ်ဘယ်မည်သောအကောင်နှင့်လျက်ရှိသည်သော remaking ဘို့စဉ်းစားလျက်ရှိရာဖိုင်တွေကပြောပါတယ် ဘာလုပ်မလဲ။

-e

makefiles ထံမှ variable တွေကိုကျော်ပတ်ဝန်းကျင်စားပေးမှုကနေယူ variable တွေကိုပေးပါ။

-f ဖိုင်

တစ်ဦး makefile အဖြစ်ဖိုင်ကိုအသုံးပြုပါ။

-i

ဖိုင်များကိုပြန်လည်အသက်သွင်းနိုင်ရန်ကွပ်မျက်ခံရပညတ်တော်တို့ကိုအားလုံးကိုအမှားများကိုလျစ်လျူရှုပါ။

-i dir

မည်ဖြစ်ပြီးအဆိုပါ makefiles ရှာဟာ directory dir ဖေါ်ပြသည်။ အတော်ကြာ -i ရွေးချယ်စရာအများအပြား directory များသတ်မှတ်အသုံးပြုကြသည်လျှင်, directory များသတ်မှတ်ထားသောနိုင်ရန်အတွက်ကိုရှာဖွေနေကြပါတယ်။ -i dir ခွင့်ပြုခဲ့တာဖြစ်ပါတယ်အဖြစ် -i dir: လုပ်၏အခြားအလံဖို့အငြင်းပွားမှုများနှင့်မတူဘဲ -i အလံနှင့်အတူပေးထားသောလမ်းညွှန်အလံပြီးနောက်တိုက်ရိုက်လာနိုငျသညျ။ ဤသည် syntax ကို C preprocessor ရဲ့ -i အလံတွေနဲ့လိုက်ဖက်တဲ့အဘို့အခွင့်ပြုခဲ့ခြင်းဖြစ်သည်။

-j အလုပ်အကိုင်များ

အလုပ်အကိုင်အခွင့်အ (ပညတ်တို့ကို) ၏နံပါတ်တစ်ခုတစ်ပြိုင်တည်း run ဖို့ဖေါ်ပြသည်။ တစ်ဦးထက်ပို -j option ကိုလည်းမရှိလျှင်, နောက်ဆုံးတဦးတည်းထိရောက်သောဖြစ်ပါတယ်။ အဆိုပါ -j option ကိုတစ်ဦးငြင်းခုံခြင်းမရှိဘဲပေးထားလျှင်တစ်ပြိုင်နက် run နိုင်သောအလုပ်အကိုင်များ၏နံပါတ်ကန့်သတ်မည်မဟုတ်ပါစေ။

-k

မှားယွင်းမှုတစ်ခုအပြီးတတ်နိုင်သမျှ Continue ။ အဆိုပါပျက်ကွက်ကြောင်းပစ်မှတ်များနှင့်ပေါ်မှာမူတည်သောသူတို့သ remade မဖွစျနိုငျနေချိန်မှာအဲဒီပစ်မှတ်၏အခြားမှီခိုအားလုံးအတူတူပင်လုပ်ငန်းများ၌နိုင်ပါသည်။

-l

-l ဝန်

အဲဒီမှာအပြေးအခြားသူတွေအလုပ်အကိုင်များဖြစ်ကြောင်းနှင့်ဝန်ပျမ်းမျှအားကိုအနည်းဆုံးဝန် (က floating-point နံပါတ်) ပါလျှင်အဘယ်သူမျှမသစ်ကိုအလုပ်အကိုင်များ (ပညတ်တို့ကို) စတင်သင့်ကြောင်းဖေါ်ပြသည်။ အဘယ်သူမျှမငြင်းခုံနှင့်အတူ, ယခင်ဝန်န့်သတ်ချက်ဖယ်ရှားပေးပါသည်။

-n

ကွပ်မျက်ခံရမည်ဖြစ်ကြောင်းသောပညတ်တော်တို့ကို Print, ဒါပေမယ့်သူတို့ကိုစီရင်ကြပါဘူး။

-O ဖိုင်

၎င်း၏မှီခိုထက်အဟောင်းတွေဖြစ်တယ်လျှင်ပင်ဖိုင်ကို file ကိုပြန်လည်အသက်သွင်းမနေပါနဲ့, နှင့်ဖိုင်ထဲမှာပြောင်းလဲမှုများအကောင့်ပေါ်မှာဘာမှပြန်လည်အသက်သွင်းကြဘူး။ အမှန်ကတော့ဖိုင်ကိုအလွန်အသက်ကြီးအဖြစ်ကုသနှင့်၎င်း၏စည်းမျဉ်းစည်းကမ်းတွေကိုလျစ်လျူရှုနေကြပါတယ်။

-p

အဆိုပါ makefiles ကိုဖတ်ရှုခြင်းမှရလဒ်များသောဒေတာများအခြေစိုက်စခန်း (စည်းမျဉ်းစည်းကမ်းနှင့်အ variable ကိုတန်ဖိုးများ) Print; ထို့နောက်ပုံမှန်အတိုင်းသို့မဟုတ်အဖြစ်မဟုတ်ရင်သတ်မှတ်ထားသောအဖြစ်စီမံထားသည်။ ဤသည်ကိုလည်း -v switch ကို (အောက်တွင်ကြည့်ပါ) ကပေးတဲ့ဗားရှင်းသတင်းအချက်အလက်နေရိုက်ထုတ်။ မည်သည့်ဖိုင်များကိုပြန်လည်အသက်သွင်းဖို့ကြိုးစားနေခြင်းမရှိဘဲဒေတာအခြေစိုက်စခန်း print ထုတ်မှ, အသုံးပြုမှု -p -f / dev / null ပါစေ။

-q

`` မေး mode ကို '' ။ မည်သည့်ပညတ်တို့ကို run, ဒါမှမဟုတ်ဘာမှ print ထုတ်မနေပါနဲ့, သတ်မှတ်ထားသောပစ်မှတ် up to date ဖြစ်နေပြီးသားဖြစ်ကြပါလျှင်ကိုယ့်မဟုတ်ရင် nonzero, သုညကြောင်းတစ်ခုထွက်ပေါက် status ကိုပြန်သွားပါ။

-r

Built-in သွယ်ဝိုက်စည်းမျဉ်းများအသုံးပြုမှုကိုဖယ်ရှားပစ်။ ဒါ့အပြင်နောက်ဆက်စည်းမျဉ်းစည်းကမ်းတွေအဘို့နောက်ဆက်၏ default အနေနဲ့စာရင်းထွက်ရှင်းလင်းပါ။

-s

အသံတိတ်စစ်ဆင်ရေး; သူတို့ကွပ်မျက်ခံရနေကြသည်အဖြစ်ပညတ်တော် print ထုတ်ကြဘူး။

-s

အဆိုပါ -k option ကို၏အကျိုးသက်ရောက်မှု Cancel ။ ဤသည် -k MAKEFLAGS မှတဆင့်စေသို့မဟုတျသငျ့ပတ်ဝန်းကျင်တွင် MAKEFLAGS အတွက် -k သတ်မှတ်ထားလျှင်ထိပ်တန်းအဆင့်ကနေအမွေဆက်ခံစေခြင်းငှါအဘယ်မှာရှိတဲ့ request လုပ် မှလွဲ. လိုအပ်သောဘယ်တော့မှဖြစ်ပါတယ်။

-t

အစားသူတို့ရဲ့ပညတ်တော်တို့ကိုအပြေး၏ (တကယ်ကသူတို့ကိုပြောင်းလဲနေတဲ့မရှိဘဲယနေ့အထိသူတို့ကိုတက် mark) ဖိုင်တွေထိပါ။ ဒါကလုပ်၏အနာဂတ် invocations အရူးနိုင်ရန်အတွက်, ပညတ်တော်တို့ကိုပြုမိခဲ့ဟန်ဆောင်ရန်အသုံးပြုသည်။

-v

အဆိုပါလုပ်အစီအစဉ်၏ဗားရှင်းပေါင်းတစ်မူပိုင်ခွင့်, စာရေးဆရာများများ၏စာရင်းကိုနှင့်မျှမတို့အာမခံလည်းမရှိကြောင်းအကြောင်းကြားစာ Print ။

-w

အခြားအအပြောင်းအလဲနဲ့မီနှင့်အပြီးပြုပြင် directory ကိုင်တစ်ဦးမက်ဆေ့ခ်ျကို print ထုတ်။ ဤသည်မှာတဲ့ request လုပ်ပညတ်တော်ရှုပ်ထွေးအသိုက်ထဲကနေအမှားအယွင်းများကိုဆင်းခြေရာခံဘို့အအသုံးဝင်သောဖြစ်နိုင်သည်။

-W ဖိုင်

ပစ်မှတ် file ကိုဖွင့်ပြုပြင်လိုက်ပါကြောင်းဟန်ဆောင်။ အဆိုပါ -n အလံနှင့်အတူအသုံးပြုသောအခါ, ဤသူသည်သင်တို့ပြုလုပ်ဖိုင်ကိုပြုပြင်မွမ်းမံရန်ဖြစ်လျှင်ဖြစ်မည်ကိုသင်သည်အဘယ်အရာကိုပြသသည်။ -n မရှိရင်ကြောင့်နီးပါးပြုပြင်မွမ်းမံအချိန်သာလုပ်၏စိတ်ကူးစိတ်သန်းအတွက်ပြောင်းလဲသွားတယ်ကြောင်း မှလွဲ. အောင်ပြေးမတိုင်မီပေးထားသောဖိုင်ပေါ်တွင်တစ်ဦးထိတွေ့ command ကို run အဖြစ်အတူတူပင်ဖြစ်ပါသည်။