உருவாக்க - குழுக்கள் திட்டங்களை பராமரிக்க குனு பயன்படுத்த
கதைச்சுருக்கம்
[ -f makefile ] [விருப்பம்] ... இலக்கு ...
எச்சரிக்கை
இந்த பக்கமானது குனு தயாரிப்பின் ஆவணத்தின் ஒரு பிரிவாகும் . குனு திட்டம் nroff ஐ பயன்படுத்தாததால், இது அவ்வப்போது மட்டுமே புதுப்பிக்கப்படுகிறது. முழுமையான, தற்போதைய ஆவணங்கள், Texinfo மூல கோப்பு make.texinfo இருந்து உருவாக்கப்பட்ட தகவல் கோப்பு make.info பார்க்கவும்.
விளக்கம்
ஒரு பெரிய நிரலின் துண்டுகள் மறுகட்டமைக்கப்பட வேண்டும் மற்றும் அவற்றை மறுஒழுங்கமைக்க கட்டளைகளை வெளியிடுவதன் மூலம் தானாகவே தீர்மானிக்கவேண்டியது பயன்பாட்டு பயன்பாட்டின் நோக்கமாகும். கையேடு, GNU தயாரிப்பின் தயாரிப்பை விவரிக்கிறது, இது ரிச்சர்ட் ஸ்டால்மன் மற்றும் ரோலண்ட் மெக்ராத் எழுதியது. எங்களது உதாரணங்கள் சி நிரலாக்கங்களைக் காட்டுகின்றன, ஏனெனில் அவை மிகவும் பொதுவானவை, ஆனால் நீங்கள் எந்த நிரலாக்க மொழியையும் உருவாக்கலாம், அதன் தொகுப்பி ஷெல் கட்டளையுடன் இயங்க முடியும். உண்மையில், செய்ய திட்டங்கள் மட்டுமே. மற்றவர்கள் மற்றவர்கள் மாற்றும் போதெல்லாம் சில கோப்புகள் மற்றவர்களிடமிருந்து தானாக புதுப்பிக்கப்பட வேண்டிய எந்தவொரு பணியையும் விவரிக்க நீங்கள் இதைப் பயன்படுத்தலாம்.
தயாரிப்பதற்கு பயன்படுத்த தயார் செய்ய , உங்கள் நிரலில் கோப்புகளின் உறவுகளை விவரிக்கும் makefile எனும் ஒரு கோப்பை நீங்கள் எழுத வேண்டும், ஒவ்வொரு கோப்பை புதுப்பிப்பதற்கான கட்டளைகளையும் குறிப்பிடுகிறது. ஒரு நிரலில், பொதுவாக இயங்கக்கூடிய கோப்பு பொருள் கோப்புகளிலிருந்து புதுப்பிக்கப்படுகிறது, இவை மூல கோப்புகளை தொகுப்பதன் மூலம் இயக்கப்படுகின்றன.
ஒரு பொருத்தமான தயாரிப்பாளர் இருந்தால், ஒவ்வொரு முறை நீங்கள் சில மூல கோப்புகளை மாற்றும் போது, இந்த எளிய ஷெல் கட்டளையை:
செய்ய
தேவையான அனைத்து மறுசீரமைப்புகளையும் செய்ய போதுமானது. தயாரிக்கும் நிரல் makefile தரவுத் தளத்தையும் கோப்புகளின் கடைசிக்-திருத்த முறைகளையும் புதுப்பிக்க வேண்டிய கோப்புகளைப் பயன்படுத்துவதைத் தீர்மானிக்கிறது. அந்த ஒவ்வொரு கோப்புக்கும், அது தரவுத்தளத்தில் பதிவு செய்யப்படும் கட்டளைகளை வெளியிடுகிறது.
makefile இல் கட்டளைகளை நிறைவேற்றுவது ஒன்று அல்லது அதற்கு மேற்பட்ட இலக்கு பெயர்களை புதுப்பிக்க, பெயர் பொதுவாக ஒரு நிரலாகும். No -f விருப்பம் இல்லை என்றால், அந்த வரிசையில் makefiles GNUmakefile , makefile மற்றும் Makefile ஆகியவற்றைப் பார்ப்போம் .
பொதுவாக நீங்கள் உங்கள் தயாரிப்பாளரை makefile அல்லது Makefile என அழைக்க வேண்டும். ( Makefile ஐ பரிந்துரைக்கிறோம், ஏனென்றால் அடைவு பட்டியலின் தொடக்கத்திற்கு அருகே, README போன்ற மற்ற முக்கியமான கோப்புகளுக்கு அருகில் உள்ளது.) முதல் பெயர் சரிபார்க்கப்பட்டது, குனுமகேஃபைல் மிகவும் தயாரிப்பாளர்களுக்கு பரிந்துரைக்கப்படவில்லை. நீங்கள் குனு தயாரிப்பதற்கு குறிப்பிட்ட ஒரு தயாரிப்பாளரைக் கொண்டிருப்பின் இந்த பெயரை நீங்கள் பயன்படுத்த வேண்டும் , மேலும் பிற பதிப்புகளை புரிந்து கொள்ள முடியாது. Makefile என்றால் `- ', நிலையான உள்ளீடு வாசிக்கப்படுகிறது.
குறிக்கோளை கடைசி இலக்காக மாற்றப்பட்டதிலிருந்து அல்லது இலக்கு இல்லாவிட்டால் மாற்றப்பட்ட முன்மாதிரியான கோப்புகளைச் சார்ந்து இருந்தால், மேம்படுத்தல்கள் ஒரு இலக்கை உருவாக்குகின்றன.
விருப்பங்கள்
-b
-m
பிற விருப்பங்களைக் கொண்டு இணக்கத்தன்மைக்கு இந்த விருப்பங்கள் புறக்கணிக்கப்படுகின்றன.
-C dir
Makefiles படிக்க அல்லது வேறு எதையும் செய்து முன் டைரக்டரி dir மாற்ற. பல -C விருப்பம் குறிப்பிடப்பட்டிருந்தால், ஒவ்வொன்றும் முந்தைய ஒரு தொடர்புடையதாக இருக்கும்: -C / -C போன்றவை -C / etc க்கு சமம். இது தயாரிப்பின் சுருக்கமான அழைப்புகள் மூலம் பயன்படுத்தப்படுகிறது.
-d
சாதாரண செயலாக்கத்துடன் கூடுதலாக பிழைத்திருத்த தகவலை அச்சிடுக. பிழைத்திருத்த தகவல் எந்த கோப்புகளை கோப்புகளை ரீமிக்ஸ் செய்ய வேண்டும் என்று கருதுகிறீர்கள் என்று கூறுகிறார், இது கோப்புகளின் நேரங்கள் ஒப்பிடுகையில், என்ன விளைவுகள் உண்மையில் மறுதொடக்கம் செய்யப்பட வேண்டும், இது மறைமுகமாக விதிகள் பரிசீலிக்கப்படுகின்றன மற்றும் அவை பொருந்தும் --- எல்லாமே சுவாரசியமானவை என்ன செய்ய.
-e
மாதிரிகள் மூலம் மாறிகள் மீது சூழல் முன்னுரிமையிலிருந்து எடுக்கப்பட்ட மாறிகள் கொடுங்கள்.
-f கோப்பு
ஒரு தயாரிப்பாளராக கோப்பு பயன்படுத்தவும்.
-நான்
கோப்புகளை மீட்டெடுக்க செயல்படுத்தப்படும் கட்டளைகளில் அனைத்து பிழைகளையும் புறக்கணி.
-நன்றி
இதில் தயாரிப்பாளர்களுக்கு தேட ஒரு அடைவு dir குறிப்பிடுகிறது. பல -ஐபிஐ விருப்பங்களை பல அடைவுகள் குறிப்பிடுவதற்காக பயன்படுத்தினால், அடைவுகள் குறிப்பிட்ட வரிசையில் தேடப்படுகின்றன. பிற கொடிகளுக்கு விவாதங்களைப் போலன்றி, ஐஐ கொடிகளுடன் கொடுக்கப்பட்ட கோப்பகங்கள் நேரடியாக கொடிக்குப் பின் நேரடியாக வரலாம்: -I dir அனுமதிக்கப்படுகிறது, அதே போல் -I dir. இந்த தொடரியல் C ப்ராப்ராசசரின் -I கொடிடன் இணக்கத்தன்மைக்கு அனுமதிக்கப்படுகிறது.
-ஜ வேலைகள்
ஒரே நேரத்தில் இயக்க வேலைகளின் எண்ணிக்கை (கட்டளைகள்) குறிப்பிடுகிறது. ஒன்று- j விருப்பத்தை விட அதிகமாக இருந்தால், கடைசியாக ஒன்று பயனுள்ளதாக இருக்கும். -j விருப்பம் ஒரு வாதத்தின்றி வழங்கப்பட்டால், ஒரே நேரத்தில் இயங்கக்கூடிய வேலைகளின் எண்ணிக்கை குறைக்கப்படாது.
-k
பிழையை முடிந்தவரை முடிந்தவரை தொடரவும். தோல்வி அடைந்த இலக்கு, அதைச் சார்ந்து உள்ளவர்கள் மறுபடியும் மாற்றமுடியாத நிலையில், இந்த இலக்குகளின் மற்ற சார்புகள் அனைத்தையும் ஒரே மாதிரியாக செயல்படுத்த முடியும்.
-l
-l சுமை
பிற வேலைகள் இயங்கினாலும், சுமை சராசரியாக குறைந்தது சுமை (மிதக்கும் புள்ளி எண்) இருந்தால் புதிய வேலைகள் (கட்டளைகள்) தொடங்கப்படக்கூடாது என்று குறிப்பிடுகிறது. எந்த வாதமும் இல்லாமல், முந்தைய சுமை வரம்பை நீக்குகிறது.
-n
செயல்படுத்தப்படும் கட்டளைகளை அச்சிடுக, ஆனால் அவற்றை இயக்க வேண்டாம்.
-o கோப்பு
கோப்பின் கோப்பினை அதன் நம்பகத்தன்மையை விடவும் பழையதாக மாற்றாதீர்கள், மேலும் கோப்பில் உள்ள மாற்றங்களைக் கணக்கில் எதையாவது மாற்றாதீர்கள். அடிப்படையில் கோப்பு மிகவும் பழைய சிகிச்சை மற்றும் அதன் விதிகள் புறக்கணிக்கப்படுகின்றன.
-p
தயாரிப்பாளர்களைப் படிப்பதன் விளைவாக தரவுத் தளத்தை (விதிகள் மற்றும் மாறி மதிப்புகள்) அச்சிடவும்; பின்னர் வழக்கம் போல் அல்லது இல்லையெனில் குறிப்பிட்டபடி இயக்கவும். இது -v சுவிட்ச் (கீழே பார்க்கவும்) கொடுக்கப்பட்ட பதிப்பு தகவல்களையும் இது அச்சிடுகிறது. எந்த கோப்புகளை ரீமேக் செய்ய முயற்சிக்காமல் தரவு தளத்தை அச்சிட, make -p -f / dev / null ஐப் பயன்படுத்தவும் .
-q
`` கேள்வி முறை ''. எந்த கட்டளையையும் இயக்க வேண்டாம், அல்லது எதையும் அச்சிடாதே; குறிக்கப்பட்ட இலக்குகள் ஏற்கனவே தேதி வரை இருந்தால் பூஜ்ஜியமாக ஒரு வெளியேறும் நிலை திரும்பும், இல்லையெனில் nonzero.
-r
உள்ளமைக்கப்பட்ட உள்ளார்ந்த விதிகளை பயன்படுத்துவதை அகற்றவும். பின்னொட்டு விதிகள் பின்னொட்டுகளின் முன்னிருப்பு பட்டியலை தெளிவாக அழிக்கவும்.
-s
அமைதியான செயல்பாடு; அவை செயல்படுத்தப்படுகையில் கட்டளைகளை அச்சிட வேண்டாம்.
-S
-k விருப்பத்தின் விளைவு ரத்துசெய்யவும். இது ஒரு சுழல்நிலையானது தவிர -இது மேல்-நிலை மேக் -மேன்ஃப்லாக்ஸ் மூலமாக அல்லது நீங்கள் உங்கள் சூழலில் MAKEFLAGS- யில் அமைக்கினால் -இல் மறுபதிப்பு செய்யப்பட வேண்டும்.
-t
தங்களது கட்டளைகளை இயங்குவதற்குப் பதிலாக கோப்புகளைத் தொடவும் (உண்மையில் அவற்றை மாற்றியமைக்காத வரை அவற்றைக் குறியிடவும்). எதிர்கால அழைப்பிதழ்கள் தயாரிப்பதை முட்டாளாக்குவதற்காக கட்டளைகளை நடத்தியது என்று பாசாங்கு செய்ய இது பயன்படுகிறது.
-v
தயாரிப்பாளரின் பதிப்பு மற்றும் ஒரு பதிப்புரிமை பதிப்பு, ஆசிரியர்களின் பட்டியல் மற்றும் எந்த உத்தரவாதமும் இல்லாத ஒரு அறிவிப்பு.
-w
பிற செயலாக்கத்திற்கு முன்னரும் பின்னும் வேலை செய்யும் அடைவைக் கொண்ட ஒரு செய்தியை அச்சிட. சுருக்கமாக செய்யக்கூடிய கட்டளைகளின் சிக்கலான கூடுகளிலிருந்து பிழைகள் துண்டிக்கப்படுவது இது பயனுள்ளதாக இருக்கும்.
-W கோப்பு
இலக்கு கோப்பில் மாற்றம் செய்யப்பட்டுவிட்டது என்று முன்னறிவித்தல். -என் கொடியைப் பயன்படுத்தும்போது, அந்த கோப்பை நீங்கள் மாற்றினால் என்ன நடக்கும் என்று இது காட்டுகிறது. -இன் இல்லாமல், கொடுக்கப்பட்ட கோப்பில் ஒரு தொடு கட்டளையை இயங்கச் செய்வதற்கு கிட்டத்தட்ட ஒரே மாதிரியாக இருக்கிறது, மாற்றியமைக்க நேரம் மாற்றியமைக்கப்படும் நேரத்தில் மட்டுமே மாற்றப்படுகிறது.