Добавил:
Eatmore
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:
- 64 -
7. MAKE: гвЁ«Ёв б®Їа®ў®¦¤ҐЁп Їа®Ја ¬¬.
----------------------------------------
7.1. ЋЎйЁҐ ᢥ¤ҐЁп.
€бЇ®«м§®ў ЁҐ гвЁ«Ёвл б®Їа®ў®¦¤ҐЁп Їа®Ја ¬¬ MAKE
Ї®§ў®«пҐв ўв®¬ вЁ§Ёа®ў вм Їа®жҐбб а §а Ў®вЄЁ Ё нЄбЇ«г в жЁЁ
Їа®Ја ¬¬ бᥬЎ«ҐаҐ Ё п§лЄ е ўлб®Є®Ј® га®ўп. Џ®б«Ґ в®Ј®,
Є Є Ўл«Ё ўҐбҐл Ё§¬ҐҐЁп ў Ёбе®¤л© д ©«, ЇаЁ Ї®¬®йЁ MAKE
¬®Јгв Ўлвм ўлЇ®«Ґл ¤Ґ©бвўЁп, Ґ®Ўе®¤Ё¬лҐ Ї® ®в®Ўа ¦ҐЁо
нвЁе Ё§¬ҐҐЁ© ў ўл室ле д ©« е.
‚ ®в«ЁзЁҐ ®в ¤агЈЁе Їа®Ја ¬¬ Ї ЄҐв®© ®Ўа Ў®вЄЁ, MAKE
ба ўЁў Ґв ¤ вл Ї®б«Ґ¤Ёе ¬®¤ЁдЁЄ жЁ© ўл室ле (楫Ґўле)
д ©«®ў б ¤ в ¬Ё Ї®б«Ґ¤Ёе ¬®¤ЁдЁЄ жЁ© Ёб室ле (вॡ㥬ле)
д ©«®ў. MAKE ўлЇ®«пҐв Ї®бв ў«Ґго § ¤ зг, в®«мЄ® Ґб«Ё
楫Ґў®© д ©« бв аиҐ. ќв® ¬®¦Ґв бнЄ®®¬Ёвм ¬®Ј® ўаҐ¬ҐЁ,
ЇаЁ¬Ґа, ЇаЁ а §а Ў®вЄҐ Їа®Ја ¬¬, ᮤҐа¦ йЁебп ў® ¬®ЈЁе
Ёб室ле д ©« е Ё«Ё вॡгойЁе ҐбЄ®«мЄЁе и Ј®ў Є®¬ЇЁ«пжЁЁ.
7.2. ‡ ЇгбЄ Ё ®б®ЎҐ®бвЁ а Ў®вл MAKE.
ЏҐаҐ¤ § ЇгбЄ®¬ MAKE ¤®«¦Ґ Ўлвм ᮧ¤ бЇҐжЁ «мл©
д ©« ®ЇЁб Ё© MAKE, ᮤҐа¦Ё¬®Ґ Є®в®а®Ј® § ¤ Ґв Ї®бв ў«Ґго
§ ¤ зг Ё ®ЇаҐ¤Ґ«пҐв ваҐЎгҐ¬лҐ ¤«п ҐҐ ўлЇ®«ҐЁп д ©«л.
” ©« ®ЇЁб Ё© б®бв®Ёв Ё§ ®¤®Ј® Ё«Ё ҐбЄ®«мЄЁе
®ЇЁб Ё© 楫Ё/Ёбв®зЁЄ . Љ ¦¤®Ґ ®ЇЁб ЁҐ § ¤ Ґвбп ў ўЁ¤Ґ:
<Ё¬п Ёб室®Ј® д ©« > : <Ё¬Ґ вॡ㥬ле д ©«®ў>
<Є®¬ ¤ >
...
ЏаҐ¤Ї®« Ј Ґвбп, зв® гЄ § л© Ёбе®¤л© д ©« ¬®¦Ґв Ўлвм
ЇаҐ®Ўа §®ў , ¤«п 祣® ¬®Јгв Ї® ¤®ЎЁвмбп д ©«л б®
бЇҐжЁдЁжЁа®ў л¬Ё Ї®б«Ґ : Ё¬Ґ ¬Ё.
- 65 -
€¬Ґ д ©«®ў ЇаЁ Ґ®Ўе®¤Ё¬®бвЁ ¬®Јгв Ўлвм б Ў¦Ґл
бЇҐжЁдЁЄ жЁп¬Ё Їг⥩ Ї®ЁбЄ ў Ї®¤®Ј« ў«ҐЁпе.
<Љ®¬ ¤ > а бб¬ ваЁў Ґвбп Є Є Ё¬п ЁбЇ®«ЁвҐ«м®Ј®
д ©« Ё«Ё Є®¬ ¤ MS-DOS.
Њ®¦Ґв Ўлвм § ¤ ® «оЎ®Ґ зЁб«® вॡ㥬ле д ©«®ў, ®
в®«мЄ® ®¤Ё Ёбе®¤л© (楫Ґў®©). €¬Ґ вॡ㥬ле д ©«®ў
¤®«¦л а §¤Ґ«пвмбп е®вп Ўл ®¤Ё¬ Їа®ЎҐ«®¬. …б«Ё ®Ё Ґ
Ї®¬Ґй овбп ®¤®© бва®ЄҐ, ¬®¦Ґв Ўлвм бЇҐжЁдЁжЁа®ў
ЇаЁ§ Є Їа®¤®«¦ҐЁп - бЁ¬ў®« \ .
Њ®¦Ґв Ўлвм § ¤ ® «оЎ®Ґ зЁб«® Є®¬ ¤ DOS Ё/Ё«Ё Ё¬Ґ
ЁбЇ®«ЁвҐ«мле д ©«®ў, ® Є ¦¤ п Є®¬ ¤ Ё«Ё Ё¬п ¤®«¦л
а бЇ®« Ј вмбп ®в¤Ґ«м®© бва®ЄҐ Ё зЁ вмбп б бЁ¬ў®« TAB
Ё«Ё е®вп Ўл ®¤®Ј® Їа®ЎҐ« . Љ®¬ ¤л Ё«Ё д ©«л ўлЇ®«повбп
«Ёим ў ⮬ б«гз Ґ, Ґб«Ё е®вп Ўл ®¤Ё Ё§ вॡ㥬ле д ©«®ў Ўл«
¬®¤ЁдЁжЁа®ў Ї®б«Ґ ᮧ¤ Ёп Ё«Ё ¬®¤ЁдЁЄ жЁЁ 楫Ґў®Ј®, в.Ґ.
¤®«¦® ўлЇ®«пвмбп ®¤® Ё§ ¤ўге гб«®ўЁ©:
- 楫Ґў®© д ©« бв аиҐ вॡ㥬®Ј®;
- 楫Ґў®© д ©« Ґ бгйҐбвўгҐв.
Њ®¦Ґв Ўлвм § ¤ ® «оЎ®Ґ зЁб«® ®ЇЁб Ё© 楫Ё/Ёбв®зЁЄ .
Џ®б«Ґ¤пп бва®Є ЇаҐ¤л¤г饣® ®ЇЁб Ёп ¤®«¦ ®в¤Ґ«пвмбп ®в
ЇҐаў®© бва®ЄЁ б«Ґ¤го饣® ®ЇЁб Ёп е®вп Ўл ®¤®© бва®Є®©,
ᮤҐа¦ 饩 ўбҐ Їа®ЎҐ«л.
ЏаЁ Ї®пў«ҐЁЁ бЁ¬ў®« # ®бв в®Є бва®ЄЁ бзЁв Ґвбп
Є®¬¬Ґв аЁҐ¬. ‚ ®Ў« бвЁ Є®¬ ¤ бЁ¬ў®« # ¬®¦Ґв 室Ёвмбп
в®«мЄ® ў 1-© Ї®§ЁжЁЁ бва®ЄЁ.
‘«Ґ¤гҐв Ї®¬Ёвм, зв® Ї®а冷Є б«Ґ¤®ў Ёп ®ЇЁб Ё©
Єа ©Ґ ў ¦Ґ, в.Є. ў Їа®жҐбᥠЁе ®ва Ў®вЄЁ ¬®Јгв ¬Ґпвмбп
¤ вл ¬®¤ЁдЁЄ жЁ© д ©«®ў, зв® ®Є §лў Ґв ў«ЁпЁҐ ¤ «мҐ©иго
а Ў®вг MAKE.
‡ ЇгбЄ MAKE ®бгйҐбвў«пҐвбп ўўҐ¤ҐЁҐ¬ Є®¬ ¤®© бва®ЄЁ
б«Ґ¤го襣® ўЁ¤ :
MAKE [<®ЇжЁЁ>][<¬ Єа®®ЇаҐ¤Ґ«ҐЁп>]<Ё¬п д ©« ®ЇЁб Ё©>
ЋЇжЁЁ Ё ¬ Єа®®ЇаҐ¤Ґ«ҐЁп MAKE ®ЇЁб л ў ЇЇ.7.3 Ё 7.4
ᮮ⢥вб⢥®.
€¬п д ©« ®ЇЁб Ё© MAKE ®Ўлз® Ґ Ё¬ҐҐв а биЁаҐЁп Ё
б®ўЇ ¤ Ґв б Ў §®ўл¬Ё Ё¬Ґ ¬Ё ЁбЇ®«м§гҐ¬ле ў ®ЇЁб Ёпе
д ©«®ў, ® нв® Ґ пў«пҐвбп ®Ўп§ ⥫мл¬.
…б«Ё MAKE ®Ў аг¦Ёў Ґв, зв® ®зҐаҐ¤®Ґ ®ЇЁб ЁҐ Ї®
Є ЄЁ¬-«ЁЎ® ЇаЁзЁ ¬ Ґ ¬®¦Ґв Ўлвм ®ва Ў®в ®, ®бгйҐбвў«пҐвбп
ЇҐаҐе®¤ Є б«Ґ¤го饬㠮ЇЁб Ёо.
…б«Ё ў Їа®жҐббҐ а Ў®вл ўлпбЁвбп, з⮠楫Ґў®© д ©« Ґ
бгйҐбвўгҐв, MAKE Їа®¤®«¦ Ґв а Ў®вг, в.Є. нв®в д ©« ¬®¦Ґв
Ўлвм ᮧ¤ Ї®б«Ґ¤гойЁ¬Ё Є®¬ ¤ ¬Ё. …б«Ё ¦Ґ Ґ бгйҐбвўгҐв
ваҐЎгҐ¬л© Ё«Ё Є®¬ ¤л© д ©« Ё«Ё ў®§ЁЄ Ґв ®иЁЎЄ ЇаЁ
ўлЇ®«ҐЁЁ Є®¬ ¤л, MAKE ЇаҐЄа й Ґв бў®о а Ў®вг,
Є®б®«м ўл¤ Ґвбп Ї®пбпо饥 б®®ЎйҐЁҐ.
- 66 -
7.3. ЋЇжЁЁ MAKE.
Љ ¦¤ п ®ЇжЁп MAKE ў Є®¬ ¤®© бва®ЄҐ § ЇгбЄ MAKE
®Ў®§ з Ґвбп ЇаҐ¤иҐбвўгойЁ¬ бЁ¬ў®«®¬ / .
ЋЇЁб ЁҐ ®ЇжЁ© MAKE ЇаЁўҐ¤Ґ® Ё¦Ґ:
/D - ‚л¤ ў вм Є®б®«м ¤ вл Ї®б«Ґ¤Ёе ¬®¤ЁдЁЄ жЁ©
Є ¦¤®Ј® бЄ Ёа㥬®Ј® д ©« .
/I - €Ј®аЁа®ў вм Є®¤л ў®§ўа в Ї®б«Ґ ўл§лў Ґ¬ле
Їа®Ја ¬¬.
/N - ‚л¤ ў вм Є®б®«м Є®¬ ¤л, ўлЇ®«ҐЁҐ Є®в®але
Ґ ®бгйҐбвў«пҐвбп.
/S - ЌҐ ўл¤ ў вм Є®б®«м б®®ЎйҐЁ©.
7.4. Њ Єа®®ЇаҐ¤Ґ«ҐЁп.
€бЇ®«м§®ў ЁҐ ¬ Єа®®ЇаҐ¤Ґ«ҐЁ© Ї®§ў®«пҐв ®в«®¦Ёвм
®ЇаҐ¤Ґ«ҐЁҐ Є®¬Ї®Ґв ®ЇЁб Ёп а Ў®вл MAKE ¤® ¬®¬Ґв
§ ЇгбЄ . ЋЁ ¬®Јгв а бЇ®« Ј вмбп Є Є ў д ©«Ґ ®ЇЁб Ё©, в Є Ё
ў Є®¬ ¤®© бва®ЄҐ.
‘гйҐбвўгов ¤ўҐ д®а¬л ¬ Єа®®ЇаҐ¤Ґ«ҐЁ©:
<Ё¬п>=<§ 票Ґ>
Ё«Ё
$(<Ё¬п>)
ЏҐаў п д®а¬ § ¤ Ґв § 票Ґ бЁ¬ў®«ЁзҐЄ®¬г Ї а ¬Ґваг,
Є®в®ал© ¬®¦Ґв ЁбЇ®«м§®ў вмбп ¤«п ®ЇаҐ¤Ґ«ҐЁп Є®¬Ї®Ґв
®ЇЁб Ёп. „®ЇгбвЁ¬® «оЎ®Ґ зЁб«® Їа®ЎҐ«®ў ¬Ґ¦¤г н«Ґ¬Ґв®¬
<Ё¬п> Ё бЁ¬ў®«®¬ = Ё ¬Ґ¦¤г нвЁ¬ бЁ¬ў®«®¬ Ё н«Ґ¬Ґв®¬
<§ 票Ґ>, Є®в®алҐ ЁЈ®аЁаговбп. Џа®ЎҐ«л, бЇҐжЁдЁжЁа®ў лҐ
Ї®б«Ґ <§ 票Ґ>, а бб¬ ваЁў овбп Є Є з бвм § 票п.
Џа®ЎҐ«л Є Є з бвм § зҐЁп ў Є®¬ ¤®© бва®ЄҐ ¤®«¦л
§ Є«оз вмбп ў ¤ў®©лҐ Ї®бва®дл " .
‚ д ©«Ґ ®ЇЁб Ё© MAKE Є ¦¤®Ґ ¬ Єа®®ЇаҐ¤Ґ«ҐЁҐ ¤®«¦®
§ Ё¬ вм ®в¤Ґ«мго бва®Єг.
Ћ¤® Ё в® ¦Ґ Ё¬п ¬®¦Ґв Ўлвм ®ЇаҐ¤Ґ«Ґ® ў ҐбЄ®«мЄЁе
¬Ґбв е. Џ®¤бв ®ўЄ § 票© ®бгйҐбвў«пҐвбп ў ᮮ⢥вбвўЁЁ
б® б«Ґ¤гойЁ¬ бЇЁбЄ®¬ (ў Ї®ап¤ЄҐ гЎлў Ёп ЇаЁ®аЁвҐв®ў):
1. €§ Є®¬ ¤®© бва®ЄЁ.
2. €§ д ©« ®ЇЁб Ё© MAKE.
3. €§ ⥪г饣® ®Єа㦥Ёп ( ЇаЁ¬Ґа, Є«озҐўлҐ б«®ў
DOS).
- 67 -
‚в®а п д®а¬ ¬ Єа®®ЇаҐ¤Ґ«ҐЁ© ЁбЇ®«м§гҐв § 票Ґ,
®ЇаҐ¤Ґ«Ґ®Ґ ў ¤агЈ®¬ ¬ҐбвҐ. ќ«Ґ¬Ґв <Ё¬п> ЇаЁў®¤Ёвбп Є
Ё§®Ўа ¦ҐЁо ॣЁбвॠ§ Ј« ўле ЎгЄў.
„®ЇгбЄ Ґвбп ў«®¦Ґ®бвм ¬ Єа®®ЇаҐ¤Ґ«ҐЁ©, Є®Ј¤
ўгв॥Ґ ¬ Єа®®ЇаҐ¤Ґ«ҐЁҐ ®ЇаҐ¤Ґ«пҐвбп зҐаҐ§ ўҐиҐҐ. ЏаЁ
н⮬ б«Ґ¤гҐв Ё§ЎҐЈ вм ४габЁЁ.
ЏаЁ¬Ґа ४габЁў®© ў«®¦Ґ®бвЁ ¬ Єа®®ЇаҐ¤Ґ«ҐЁ©:
A=$(B)
B=$(A)
‘гйҐбвўгов 3 бЇҐжЁ «млҐ ¬ Єа®ЇҐаҐ¬ҐлҐ, Ё¬ҐойЁҐ
б«Ґ¤гойЁҐ дЁЄбЁа®ў лҐ § 票п:
$* - з бвм Ё¬ҐЁ (ЎҐ§ а биЁаҐЁп) 楫Ґў®Ј® д ©« ;
$@ - Ї®«®Ґ Ё¬п 楫Ґў®Ј® д ©« ;
$** - Ї®«л© бЇЁб®Є вॡ㥬ле д ©«®ў.
ќвЁ ¬ Єа®ЇҐаҐ¬ҐлҐ Ґ вॡго⠯।ў аЁвҐ«м®Ј®
®ЇЁб Ёп Ё ¬®Јгв ЁбЇ®«м§®ў вмбп ў д ©«Ґ ®ЇЁб Ё© MAKE.
7.5. Џа ўЁ« ўлў®¤ .
MAKE ®ЎҐбЇҐзЁў Ґв ў®§¬®¦®бвм § ¤ Ёп Їа ўЁ« ўлў®¤ ,
Є®в®алҐ Ї®¬®Ј ов Їа ўЁ«м® ЁвҐаЇаҐвЁа®ў вм ҐЇ®«®бвмо
®ЇаҐ¤Ґ«ҐлҐ Є®бвагЄжЁЁ.
Џа ўЁ« ўлў®¤ ¬®Јгв 室Ёвмбп ў д ©«Ґ ®ЇЁб Ё© MAKE
Ё«Ё ў бЇҐжЁ «м®¬ д ©«Ґ б Ё¬ҐҐ¬ TOOLS.INI, Ї®ЁбЄ Є®в®а®Ј®
®бгйҐбвў«пҐвбп ЄвЁў®¬ ¤а ©ўҐ ў Ї®¤®Ј« ў«ҐЁпе,
®ЇаҐ¤Ґ«Ґле Є®¬ ¤®© DOS PATH. ‚ д ©«Ґ TOOLS.INI Їа ўЁ« ¬
ўлў®¤ ¤®«¦ ЇаҐ¤иҐбвў®ў вм бва®Є , ЇҐаўл¬Ё бЁ¬ў®« ¬Ё
Є®в®а®© пў«повбп:
[make]
Џ®ЁбЄ Їа ўЁ« ўлў®¤ ®бгйҐбвў«пҐвбп ў б«Ґ¤го饩
Ї®б«Ґ¤®ў ⥫м®бвЁ:
1. ‚ д ©«Ґ ®ЇЁб Ё© MAKE.
2. ‚ д ©«Ґ TOOLS.INI.
Џа ўЁ« ўлў®¤ § ¤ овбп ў ўЁ¤Ґ:
.<а биЁаҐЁҐ вॡ㥬®Ј® д ©« >.<а биЁаҐЁҐ 楫Ґў®Ј® д ©« >:
<Є®¬ ¤ >
<Є®¬ ¤ >
...
ЏаЁ¬Ґа: ᮤҐа¦Ё¬®Ґ д ©« ®ЇЁб Ё© MAKE:
.asm.obj:
MASM $*.asm,,,;
test1.obj: test1.asm
test2.obj: test2.asm
MASM test2.asm;
Џа ўЁ«® ўлў®¤ § Ё¬ Ґв ЇҐаўлҐ 2 бва®ЄЁ. Џа®зЁв ў 3-о
- 68 -
бва®Єг, MAKE ®Ў аг¦Ёў Ґв, зв® ®ЇЁб ЁҐ ҐЇ®«®, в.Є. 4-п
бва®Є пў«пҐвбп 㦥 з «®¬ б«Ґ¤го饣® ®ЇЁб Ёп. Џ®ЁбЄ
㦮Ј® Їа ўЁ« ўлў®¤ ўҐ¤Ґвбп Ї® б®ўЇ ¤ҐЁо а биЁаҐЁ©
д ©«®ў бва®ЄЁ 3 б гЄ § л¬Ё ў Їа ўЁ«Ґ. Џ®б«Ґ ®влбЄ Ёп
Їа ўЁ« MAKE, ®Ўа Ў®в ў ¬ Єа®ЇҐаҐ¬Ґго $*, ўлЇ®«пҐв
Є®¬ ¤го бва®Єг:
MASM test1.asm,,;
4-п Ё 5-п бва®ЄЁ ЇаҐбв ў«пов б®Ў®© § Є®зҐ®Ґ
®ЇЁб ЁҐ, Ё ¤«п ҐЈ® ЁвҐаЇаҐв жЁЁ ЁбЇ®«м§®ў Ёп Їа ўЁ«
ўлў®¤ Ґ вॡгҐвбп.
Соседние файлы в папке cистема программирования на макроассемблере ms-dos, cправочное руководство