版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第一節(jié)gcc編譯器應(yīng)用案例001: gcc編譯器指令題目/任務(wù)1. 練習(xí)/熟悉gcc命令的使用知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. man手冊(cè)的使用2. gcc命令的使用實(shí)現(xiàn)步驟1 使用man手冊(cè),獲取gcc使用幫助2. 使用gcc -help,獲取簡(jiǎn)單的使用幫助實(shí)現(xiàn)指導(dǎo)1 在終端中輸入man gcc,獲取幫助文檔 命令行:man gcc2. 在終端中輸入gcc -help,獲取簡(jiǎn)單幫助 命令行:gcc help應(yīng)用案例002:編譯連接成執(zhí)行文件題目/任務(wù)1練習(xí)/熟悉gcc編譯連接代碼生成可執(zhí)行文件知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. 基本的編譯執(zhí)行文件的指令2. gcc命令的使用實(shí)現(xiàn)步驟1 .編寫(xiě)2個(gè).c文件,使用
2、gcc生成可執(zhí)行文件2. 使用o選項(xiàng)指定輸岀文件的名字3. 使用x選項(xiàng)指定編譯文件時(shí)所使用的語(yǔ)言4. 使用std二選項(xiàng)指定語(yǔ)言標(biāo)準(zhǔn)5. 使用ansi等同于-std=iso9899:1990選項(xiàng)6. 使用readelf執(zhí)行顯示可執(zhí)行文件的所有信息實(shí)現(xiàn)指導(dǎo)1 創(chuàng)建目錄,編寫(xiě)main.c與func.c文件 命令行:mkdir chol cd chol mkdir secol cd secol vi main.c vi func.c2. 使用gcc命令編輯一個(gè)和多個(gè)源文件 命令行:gcc main.cgcc main.c func.c3. 使用o選項(xiàng)指定輸岀文件的名字 命令行:gcc -o main
3、main.cgcc -o main main.c func.c4. 使用x選項(xiàng)指定編譯文件時(shí)所使用的語(yǔ)言 命令行:gcc -x c main.cgcc -x c+ main.c gcc x c+ -lstdc+ main.c5. 使用std=選項(xiàng)指定語(yǔ)言標(biāo)準(zhǔn)命令行:gcc -std=c89 main.cgcc -std=c99 main.cgcc std=c9x main.cgcc -std=c97 main.cgcc -std = iso9899:1990 main.c6. 使用ansi選項(xiàng)命令行:gcc -std = iso9899:1990 main.cgcc -std = iso989
4、9:1990 ansi main.cgcc ansi main.cgcc std=c99 ansi main.c7. 使用readelf執(zhí)行顯示可執(zhí)行文件的所有信息 命令彳亍:readelf -a main應(yīng)用案例003:編譯目標(biāo)文件題目/任務(wù)1. 練習(xí)/熟悉gcc編譯目標(biāo)文件知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. 基本的編譯執(zhí)行文件的指令2. gcc命令的使用實(shí)現(xiàn)步驟1. 使用c選項(xiàng)編譯.h文件和.c文件2. 使用objdump命令顯示目標(biāo)文件的相關(guān)工具實(shí)現(xiàn)指導(dǎo)1. 使用c選項(xiàng)編譯.h文件和.c文件命令行:vi main.hgcc -c main.hgcc c main.c gcc -o main mai
5、n.o2. 使用objdump命令顯示目標(biāo)文件的相關(guān)工具 命令行:objdump -d main.o應(yīng)用案例004:生成匯編與預(yù)處理文件題目/任務(wù)1 練習(xí)恿悉gcc編譯生成匯編與預(yù)處理文件知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. 基本的編譯執(zhí)行文件的指令2. gcc命令的使用實(shí)現(xiàn)步驟1. 使用s選項(xiàng)生成匯編文件名為.s文件2. 使用e選項(xiàng)生成預(yù)處理文件名j(c)或.ii(c+)3. 使用gcc處理匯編文件和預(yù)處理文件實(shí)現(xiàn)指導(dǎo)1. 使用£選項(xiàng)生成匯編文件名為.s文件 命令行:gcc -s main.c2. 使用e選項(xiàng)生成預(yù)處理文件名.i(c)或ii(c+) 命令彳亍:gcc -e -o main.i
6、main.c3. 使用gcc處理匯編文件和預(yù)處理文件 命令彳亍:gcc -o main main.igcc o main main.s應(yīng)用案例005: gcc的預(yù)處理與內(nèi)置宏題目/任務(wù)1. 練習(xí)/熟悉gcc的預(yù)處理與內(nèi)置宏知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. cpp命令查看代碼中定義的宏2. gcc命令的使用實(shí)現(xiàn)步驟1. 使用cpp命令查看與代碼無(wú)關(guān)的宏2. 使用cpp命令查看與代碼有關(guān)的宏3. 使用cpp命令列出目標(biāo)規(guī)則實(shí)現(xiàn)指導(dǎo)1. 使用cpp命令查看與代碼無(wú)關(guān)的宏命令行:cpp -dm /dev/nullgcc -e -dm /dev/null2. 使用cpp命令查看與代碼無(wú)關(guān)的宏命令行:卬p -dm
7、 ./main.cgcc -e -dm ./main.c3. 使用cpp命令列出目標(biāo)規(guī)則命令行:cpp -mm -e main.cgcce main.ccpp -mm main.c應(yīng)用案例006:編譯并使用靜態(tài)庫(kù)題目/任務(wù)1. 練習(xí)/熟悉編譯并使用靜態(tài)庫(kù)知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. 制作靜態(tài)庫(kù)2. 使用靜態(tài)庫(kù)3. 使用與編譯器有關(guān)的小工具實(shí)現(xiàn)步驟1創(chuàng)建tools.c與funcs.c文件,使用gcc -c生成.o目標(biāo)文件2. 使用ar工具歸檔成.a靜態(tài)庫(kù)文件3. 按照目標(biāo)文件的方式使用靜態(tài)庫(kù)4. 按照庫(kù)的方式使用靜態(tài)庫(kù)5. 強(qiáng)制使用靜態(tài)庫(kù)編譯6. 使用idd工具顯示程序調(diào)用的動(dòng)態(tài)庫(kù)7. 使用nmtm
8、列出目標(biāo)文件中的符號(hào)實(shí)現(xiàn)指導(dǎo)1 創(chuàng)建tools.c與funcs.c文件,使用gcc -c生成.0目標(biāo)文件 命令行:vi funcs.cvi tools.c vi usestatic.c gcc c tools.cgcc c funcs.c2. 使用ar工具歸檔成.a靜態(tài)庫(kù)文件命令行:ar -r libmyku.a tools.o funcs.o3. 按照目標(biāo)文件的方式使用靜態(tài)庫(kù)命令彳亍:gcc -o main libmyku.a usestatic.c gcc -o main usestatic.c libmyku.a4. 按照庫(kù)的方式使用靜態(tài)庫(kù)命令彳?。篻cc -0 main usestat
9、ic.c -imyku -l.5. 強(qiáng)制使用靜態(tài)庫(kù)編譯命令彳?。篻cc -0 main l. -static usestatic.c -imyku6. 使用idd工具顯示程序調(diào)用的動(dòng)態(tài)庫(kù)命令行:gcc -0 main -l. -static usestatic.c -imyku -staticidd maingcc -0 main l.static usestatic.c -imykuidd main7. 使用nm工具列出目標(biāo)文件中的符號(hào) 命令行:nm libmyku.a應(yīng)用案例007:編譯并使用動(dòng)態(tài)庫(kù)題目/任務(wù)1. 練習(xí)感悉編譯并使用動(dòng)態(tài)庫(kù) 知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. 制作動(dòng)態(tài)庫(kù)2. 使用動(dòng)態(tài)
10、庫(kù)實(shí)現(xiàn)步驟1 創(chuàng)建調(diào)用動(dòng)態(tài)庫(kù)的usesso.c文件2. 使用gcc命令生成動(dòng)態(tài)庫(kù)libmydllku.so3. 按照目標(biāo)文件使用動(dòng)態(tài)庫(kù)4. 按照庫(kù)文件使用動(dòng)態(tài)庫(kù)5.設(shè)置環(huán)境變量 ld_library_path,運(yùn)行 main實(shí)現(xiàn)指導(dǎo)1創(chuàng)建調(diào)用動(dòng)態(tài)庫(kù)的usesso.c文件命令行:vi usesso.c2. 使用gcc命令生成動(dòng)態(tài)庫(kù)libmydllku.so命令彳?。篻cc -o libmydllku.so -shared -fpic funcs.c tools.c3. 按照目標(biāo)文件使用動(dòng)態(tài)庫(kù)命令行:gcc -o main libmydllku.so usesso.cidd main4. 按照庫(kù)文
11、件使用動(dòng)態(tài)庫(kù)命令彳亍:gcc o main l. -imydllku usesso.cidd maingcc o main -static libmydllku.so usesso.c5. 設(shè)置環(huán)境變量ld_library_path,運(yùn)行main命令行:(注:可在/etc/profile 中加入 export ld_library_path = .) export ld_library_path=.idd main./mai n應(yīng)用案例00&運(yùn)行時(shí)加載動(dòng)態(tài)庫(kù)題目/任務(wù)1. 練習(xí)/熟悉運(yùn)行時(shí)動(dòng)態(tài)庫(kù)加載知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. 掌握動(dòng)態(tài)庫(kù)加載相關(guān)函數(shù)實(shí)現(xiàn)步驟1. 倉(cāng)曬dl2.c文件,并生成
12、動(dòng)態(tài)庫(kù)2. 創(chuàng)建怕stdl.c文件,編譯,執(zhí)行,查看結(jié)果實(shí)現(xiàn)指導(dǎo)1. 創(chuàng)建d2c文件,并生成動(dòng)態(tài)庫(kù) 命令行:vi dl2.cgcc -o libdll.so -shared -fpic dl2.c2. 創(chuàng)建testdl.c文件編譯,執(zhí)行,查看結(jié)果 命令行:vi testdl.cgcc -o main testdl.c ldl ./mai n應(yīng)用案例009: gcc編譯器的語(yǔ)法擴(kuò)展題目/任務(wù)1. 練習(xí)/熟悉gcc編譯器的語(yǔ)法擴(kuò)展知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. 基本語(yǔ)法擴(kuò)展2. 特殊屬性聲明實(shí)現(xiàn)步驟1. 創(chuàng)建d2c文件,并生成動(dòng)態(tài)庫(kù)2. 倉(cāng)曬testdl.c文件編譯,執(zhí)行,查看結(jié)果3. 創(chuàng)建cattri
13、butel.c文件,了解常見(jiàn)變量屬性4. 創(chuàng)建cattribute2.c文件,了解常見(jiàn)函數(shù)屬性實(shí)現(xiàn)指導(dǎo)1. 創(chuàng)建cextends.c文件,了解基本語(yǔ)法擴(kuò)展命令行:vi cextends.cgcc o main cextends.c./main2. 倉(cāng)曬cattribute.c文件,了解常見(jiàn)類型屬性 命令行:vi cattribute.cgcc cattribute.c./a.out3. 創(chuàng)建cattributel.c文件,了解常見(jiàn)變量屬性 命令行:vi cattributel.cgcc cattributel.c./a.out4. 倉(cāng)腱cattribute2.c文件,了解常見(jiàn)函數(shù)屬性 命令行:
14、vi cattribute2.cgcc cattribute2.c./a.out應(yīng)用案例010:其他編譯選項(xiàng)題目/任務(wù)1. 練習(xí)/熟悉其他編譯選項(xiàng)知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. 檢查語(yǔ)法的選項(xiàng)2. 打印編譯中每個(gè)函數(shù)名與統(tǒng)計(jì)時(shí)間的選項(xiàng)3. 編譯器打印時(shí)間統(tǒng)計(jì)的選項(xiàng)4. 編譯器打印內(nèi)存統(tǒng)計(jì)的選項(xiàng)實(shí)現(xiàn)步驟1. 使用fsyntaxonly選項(xiàng),檢查語(yǔ)法2. 使用q選項(xiàng),打印編譯中每個(gè)函數(shù)名與統(tǒng)計(jì)時(shí)間3. 使用-ftime-report選項(xiàng),打印時(shí)間統(tǒng)計(jì)4. 使用fmemreport選項(xiàng),打印內(nèi)存統(tǒng)計(jì)實(shí)現(xiàn)指導(dǎo)1. 使用fsyntaxonly選項(xiàng),檢查語(yǔ)法命令行1: gcc fsyntax-only catt
15、ribute.c2. 使用q選項(xiàng),打印編譯中每個(gè)函數(shù)名與統(tǒng)計(jì)時(shí)間 命令行:gcc -q cattribute.c3. 使用ftimereport選項(xiàng),打印時(shí)間統(tǒng)計(jì)命令彳?。篻cc -ftime-report cattribute.c4. 使用fmemreport選項(xiàng),打印內(nèi)存統(tǒng)計(jì)命令彳亍:gcc -fmem-report cattribute.c第二節(jié)基本格式輸入輸出應(yīng)用案例011: printf格式輸出題目/任務(wù)1. 練習(xí)/熟悉printf格式輸岀知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1printf格式輸岀實(shí)現(xiàn)步驟1 創(chuàng)建printf.c使用printf函數(shù)格式輸岀小數(shù)和字符串2. 創(chuàng)建printfl .c,
16、在printf函數(shù)中使用常用類型指示器3. 創(chuàng)建printf2.c,在printf函數(shù)中使用輸出精度和寬度4. 倉(cāng)曬printf3.c,在printf函數(shù)中使用標(biāo)記實(shí)現(xiàn)指導(dǎo)1創(chuàng)建printf.c,使用printf函數(shù)格式輸出小數(shù)和字符串 命令行:vi printf.cgcc -o main printf.c./mai n2. 創(chuàng)建printfl .c,在printf函數(shù)中使用常用類型指示器 命令行:vi printfl.cgcc o main pint:flc./main3. 創(chuàng)建printf2.c,在printf函數(shù)中使用輸出精度和寬度 命令行:vi printf2.cgcc -o main
17、 printf2.c./main4. 創(chuàng)建printf3.c,在printf函數(shù)中使用標(biāo)記 命令行:vi printf3.cgcc -o main printf3.c./mai n應(yīng)用案例012: scant格式輸入題目/任務(wù)1. 練習(xí)/熟悉scanf格式輸出知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. scanf格式輸出實(shí)現(xiàn)步驟1 創(chuàng)建scanf.c,使用printf函數(shù)格式輸出小數(shù)和字符串2. 創(chuàng)建scanfl .c,使用scanf函數(shù)的*格式的使用3. 創(chuàng)建scanf2.c,使用scanf函數(shù)的a格式的使用4. 創(chuàng)建scanf3.c使用scant函數(shù)的整數(shù)的使用實(shí)現(xiàn)指導(dǎo)1創(chuàng)建scanf.c,使用scanf函
18、數(shù)接受輸入的數(shù)據(jù) 命令行:vi scanf.cgcc -o main seanf.c./mai n2. 創(chuàng)建scanfl .c,使用scanf函數(shù)的*格式的使用 命令行:vi scanf 1.cgcc -o main seanfl.c./mai n3. 創(chuàng)建scanf2.c便用scanf函數(shù)的a格式的使用 命令行:vi scanf2.cgcc -o main seanf2.c./mai n4. 創(chuàng)建scanf3.c便用scanf函數(shù)的整數(shù)的使用 命令行:vi scanf3.cgcc -o main seanf3.c./mai n第三節(jié)錯(cuò)誤處理應(yīng)用案例013: errno與異常信息題目/任務(wù)1.
19、 獲取errno與異常信息知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. 獲取錯(cuò)誤的類別2. 使用代碼獲取錯(cuò)誤信息描述的方式實(shí)現(xiàn)步!1. 使用man手冊(cè),查看錯(cuò)誤的類別2. 創(chuàng)建error.c文件,使用代碼獲取錯(cuò)誤信息描述實(shí)現(xiàn)指導(dǎo)1. 使用man手冊(cè),查看錯(cuò)誤的類別命令行:man errno2. 創(chuàng)建error.c文件,使用代碼獲取錯(cuò)誤信息描述命令行:vi error.cgcc -o main error.c./mai n第四節(jié)make與makefile應(yīng)用案例014: make工具的工作機(jī)制題目/任務(wù)1. make!具的工作機(jī)制知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. make工具的用法2. make工具的工作原理實(shí)現(xiàn)步驟1創(chuàng)建
20、mymkfile.txt文件和testmake.c文件2. 使用make命令,執(zhí)行pro單元3. 使用make命令,執(zhí)行clean單元實(shí)現(xiàn)指導(dǎo)1創(chuàng)建mymkfile.txt文件和testmake.c文件 命令行:vi mymkfile.txtvi testmake.c2. 使用make命令,執(zhí)行pro單元 命令行:make promv mymkfile.txt makefile make pro3. 使用make命令,執(zhí)行clean單元 命令行:make clean應(yīng)用案例015: make的目標(biāo)(target)題目/任務(wù)1. 掌握make的目標(biāo)(target)知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. mak
21、e的語(yǔ)法2. make的目標(biāo)之間的依賴實(shí)現(xiàn)步驟1 創(chuàng)建mymkfilel .txt文件,當(dāng)依賴的目標(biāo)不存在,使make啟動(dòng)潛規(guī)則2. 倉(cāng)曬mymkfile2.txt文件當(dāng)依賴的目標(biāo)存在使make自動(dòng)執(zhí)行依賴 實(shí)現(xiàn)指導(dǎo)1創(chuàng)建mymkfilel .txt文件,當(dāng)依賴的目標(biāo)不存在,使make啟動(dòng)潛規(guī)則 命令行:vi mymkfilel.txtcp mymkfilel.txt makefilemake main2. 創(chuàng)建mymkfile2.txt文件,當(dāng)依賴的目標(biāo)存在使make自動(dòng)執(zhí)行依賴 命令行:vi mymkfile2.txt應(yīng)用案例016: makefile的變量題目/任務(wù)1掌握makefile
22、的變量的語(yǔ)法,用法知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. make的變量的語(yǔ)法2. make的變量的使用實(shí)現(xiàn)步驟1 倉(cāng)曬mymkfile3.txt文件,定義變量,使用注釋和續(xù)行符號(hào)2. 創(chuàng)建mymkfile4.txt文件,使用變量賦值符號(hào)3. 創(chuàng)建mymkfile5.txt文件,使用=變量賦值符號(hào)4. 創(chuàng)建mymkfile6.txt文件,使用?=變量賦值符號(hào)5. 創(chuàng)建mymkfile7.txt文件,使用+二變量賦值符號(hào)6. 創(chuàng)建mymkfile8.txt文件,使用make命令內(nèi)部的特殊變量7. 創(chuàng)建mymkfile9.txt文件,使用make變量的高級(jí)用法實(shí)現(xiàn)指導(dǎo)1創(chuàng)建mymkfile3.txt文件,定義變
23、量,使用注釋和續(xù)行符號(hào) 命令行:vi mymkfile3.txtcp mymkfile3.txt makefilemake cleanmake pro2. 倉(cāng)曬mymkfile4.txt文件,使用=變量賦值符號(hào) 命令行:vi mymkfile4.txtcp mymkfile4.txt makefilemake result3. 創(chuàng)建mymkfile5.txt文件,使用:=變量賦值符號(hào) 命令行:vi mymkfile5.txtcp mymkfile5.txt makefilemake result4. 倉(cāng)曬mymkfile6.txt文件,使用?=變量賦值符號(hào) 命令行:vi mymkfile6.t
24、xtcp mymkfile6.txt makefilemake result5. 倉(cāng)曬mymkfile7.txt文件使用+=變量賦值符號(hào) 命令行:vi mymkfile7.txtcp mymkfile7.txt makefilemake result6. 創(chuàng)建mymkfile8.txt文件,使用make命令內(nèi)部的特殊變量 命令行:vi mymkfile8.txtcp mymkfile8.txt makefilemake pro7. 創(chuàng)建mymkfile9.txt文件 使用make變量的高級(jí)用法 命令行:vi mymkfile9.txtcp mymkfile9.txt makefilemake
25、promake main應(yīng)用案例017: makefile的條件判定題目/任務(wù)1. 掌握makefile的條件判定知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. makefile的條件判定的語(yǔ)法實(shí)現(xiàn)步驟1創(chuàng)建mymkfile10.txt文件使用makefile的定義與未定義判定 實(shí)現(xiàn)指導(dǎo)1 創(chuàng)建mymkfile10.txt文件使用makefile的定義與未定義判定 命令行:vi mymkfilelo.txtcp mymkfilelo.txt makefilemake main應(yīng)用案例018: makfile通配符的使用題目/任務(wù)1. 掌握makfile通酉己符的使用知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1makfile通配符的使用實(shí)
26、現(xiàn)步驟1 創(chuàng)建mymkfilel 1 .txt文件,使用makefile的通配符實(shí)現(xiàn)指導(dǎo)1. 創(chuàng)建mymkfilel 1 .txt文件,使用makefile的通配符 命令行:vi mymkfilell.txtvi hello.ccp mymkfilell.txt makefile make main應(yīng)用案例019: makefile函數(shù)的使用題目/任務(wù)1. 掌握makefile函數(shù)的使用知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. makefile函數(shù)的調(diào)用語(yǔ)法2. makefile函數(shù)的分類實(shí)現(xiàn)步驟1創(chuàng)建makefun.txt文件,使用makefile中的字符串處理函數(shù)2. 創(chuàng)建makefurd .txt文件,
27、使用makefile中的文件名處理函數(shù)3. 創(chuàng)建makefun2txt文件,使用makefile中的控制函數(shù)4. 創(chuàng)建makefun3.txt文件,使用makefile中的計(jì)算函數(shù)5. 創(chuàng)建makefun4.txt文件,使用makefile中的shell函數(shù)6. 創(chuàng)建makefun5.txt文件,使用makefile中的調(diào)試函數(shù)實(shí)現(xiàn)指導(dǎo)1. 創(chuàng)建makefun.txt文件,使用makefile中的字符串處理函數(shù) 命令行:vi makefun.txtcp makefun.txt makefilemake main2. 創(chuàng)建makefunl .txt文件,使用makefile中的文件名處理函數(shù) 命
28、令行:vi makefun1.txtcp makefun1.txt makefilemake main3. 創(chuàng)建makefun2txt文件,使用makefile中的控制函數(shù) 命令行:vi makefun2.txtcp makefun2.txt makefilemake main4. 創(chuàng)建makefun3.txt文件,使用makefile中的計(jì)算函數(shù) 命令行:vi makefun3.txtcp makefun3.txt makefilemake main5. 創(chuàng)建makefun4.txt文件,使用makefile中的shell函數(shù) 命令行:vi makefun4.txtcp makefun4.t
29、xt makefilemake main6. 創(chuàng)建makefun5.txt文件,使用makefile中的調(diào)試函數(shù) 命令行:vi makefun5.txtcp makefun5.txt makefilemake main應(yīng)用案例020:影響make的環(huán)境變量題目/任務(wù)1. 影響make的環(huán)境變量知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. make的變量2. make的變量定義實(shí)現(xiàn)步驟1. 創(chuàng)建makenv.txt文件,使用makefile中的字符串處理函數(shù)2. 創(chuàng)建makenvl .txt文件,使用make命令行中定義變量實(shí)現(xiàn)指導(dǎo)1. 創(chuàng)建makenv.txt文件,查看make所有變量命令行:vi makenv.
30、txtcp makenv.txt makefile make showvar2. 創(chuàng)建makenvl .txt文件,使用make命令行中定義變量 命令行:vi makenvl .txtcp makenvl .txt makefile make main應(yīng)用案例021:命令、+、符號(hào)的使用題目/任務(wù)1. make的命令符號(hào)的使用知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. make的執(zhí)行規(guī)則2. make的命令符號(hào)的使用實(shí)現(xiàn)步驟1 創(chuàng)建makecmd.txt文件,使用makefile中的命令符號(hào)實(shí)現(xiàn)指導(dǎo)1. 創(chuàng)建makecmd.txt文件,使用makefile中的命令符號(hào) 命令行:vi makecmd.txtcp
31、makecmd.txt makefilemake main應(yīng)用案例022:使用命令包題目/任務(wù)1make的define定義變量知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. make的define命令定義多行變量實(shí)現(xiàn)步驟1 創(chuàng)建makemultiline文件,使用define定義命令包2. 創(chuàng)建makefuncition文件,使用define定義函數(shù)實(shí)現(xiàn)指導(dǎo)1 創(chuàng)建makemultiline文件,使用define定義命令包 命令彳?。簐i makemultilinemake -f makemultiline main2. 創(chuàng)建makefuncition文件,使用define定義函數(shù) 命令行:vi makefunct
32、ionmake -f makefunction main應(yīng)用案例023: makefile嵌套調(diào)用題目/任務(wù)1. makefile的嵌套調(diào)用知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. 腳本的引入2. 多腳本的合并3. 并行處理多個(gè)腳本4. 切換目錄執(zhí)行腳本實(shí)現(xiàn)步1創(chuàng)建makefilel ,makefile2文件,使用include引入腳本2. 修改makefile2文件,使用make的f選項(xiàng)合并處理多個(gè)腳本3. 使用上2文件,使用makefiles環(huán)境變量4. 在當(dāng)前目錄創(chuàng)建makefile3文件,創(chuàng)建./subdir/makefile3文件,使用make指 定不同腳本5. 創(chuàng)建makefile4文件,使用不同
33、的指令1. 創(chuàng)建makefilel ,makefile2文件,使用include引入腳本命令行:vi makefilelvi makefile2 make -f makefile2 main2. 修改makefile2文件,使用make的f選項(xiàng)合并處理多個(gè)腳本命令行:vi makefile2make -f makefilel -f makefile2 main3. 使用上2文件,使用makefiles環(huán)境變量命令行:export makefiles=makefilel makefile2 make f makefile? main4. 在當(dāng)前目錄創(chuàng)建makefile3文件,創(chuàng)建./subdir
34、/makefile3文件,使用make指 定不同腳本命令行:vi makefile3mkdir p subdirvi subdir/makefile3make f makefile3 main5. 創(chuàng)建makefile4文件,使用不同的指令命令行:vi makefile4第五節(jié)gdb與調(diào)試應(yīng)用案例024: gdb命令與使用題目/任務(wù)1. makefile的嵌套調(diào)用知識(shí)點(diǎn)說(shuō)明/訓(xùn)練要點(diǎn)1. 工具gdb命令說(shuō)明2. gdb使用方式實(shí)現(xiàn)步驟1 創(chuàng)建core.c文件,編譯成可執(zhí)行文件2. 開(kāi)啟core文件輸出3. 執(zhí)行a.out,生成core文件啟動(dòng)gdb1. 創(chuàng)建core.c文件,編譯成可執(zhí)行文件 命令行:vi core.cgcc core.c2. 開(kāi)啟core文件輸出 命令行:ulimit -aulimit -c unlimited3. 執(zhí)行a.out,生成core文件啟動(dòng)gdb 命令行:./a.outisgdb ./a.out core.290
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 收購(gòu)公司股合同范例
- 怪獸炒飯加盟合同范例
- 居間供電合同范例
- 小區(qū)黃金收購(gòu)合同范例
- 買(mǎi)賣合同附帶安裝合同范例
- 農(nóng)田蔬菜收購(gòu)合同范例
- 房屋共同修建合同范例
- 安全燒焊協(xié)議合同范例
- 合作股協(xié)議合同范例
- 包工放巖棉合同范例
- 列車車門(mén)故障應(yīng)急處理方案
- 2024年度-Pitstop教程去水印
- 2024年02月天津市口腔醫(yī)院派遣制人員招考聘用40人筆試歷年(2016-2023年)真題薈萃帶答案解析
- 聲明書(shū):個(gè)人婚姻狀況聲明
- 幼兒園年檢整改專項(xiàng)方案
- 新管徑流速流量對(duì)照表
- 20以內(nèi)退位減法口算練習(xí)題100題30套(共3000題)
- 咯血病人做介入手術(shù)后的護(hù)理
- 境外投資環(huán)境分析報(bào)告
- 便攜式氣體檢測(cè)儀使用方法課件
- 《壓力平衡式旋塞閥》課件
評(píng)論
0/150
提交評(píng)論