




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
make工具$mkdirctest$cdctest$vimhello.c$gcc–ohello.exehello.c
$gcc–chello.c
$gcc–ohello.exehello.o($./hello.exe)($gcc–g–ohello.exehello.c)$gdbhello.exe創(chuàng)建項(xiàng)目目錄編寫程序編譯鏈接
調(diào)試如何管理一個(gè)項(xiàng)目中多個(gè)文件的編譯、鏈接和生成?WindowsLinux集成編譯環(huán)境make工程管理器-4-make工具自動(dòng)編譯管理器根據(jù)文件時(shí)間自動(dòng)發(fā)現(xiàn)更新過的文件1.make功能make工程管理器Makefile文件自動(dòng)執(zhí)行大量的編譯工作編寫一些簡(jiǎn)單的編輯語句通過2.Makefile文件的寫法-5-目標(biāo)依賴要干什么運(yùn)行make后生成什么依賴什么依賴什么讓make實(shí)現(xiàn)目標(biāo)Make規(guī)則<目標(biāo)文件列表>:[依賴文件列表][<Tab>命令列表]注釋2.Makefile文件的寫法-6-依賴文件列表:是生成目標(biāo)文件所依賴的一個(gè)或多個(gè)其他文件命令列表:必須有前導(dǎo)TAB鍵操作,緊跟生成目標(biāo)文件所需要執(zhí)行的shell命令目標(biāo)文件列表:是make最終需要?jiǎng)?chuàng)建的文件<目標(biāo)文件列表>:[依賴文件列表][<Tab>命令列表]2.Makefile文件的寫法-7-【任務(wù)1】對(duì)于上節(jié)課中的hello.c程序,可以在hello.c所在的目錄編寫Makefile文件//hello.c#include<stdio.h>intmain(){printf("hellogcc\n");return0;}2.Makefile文件的寫法-8-hello.exe:hello.c gcc–ohello.exehello.c【任務(wù)1】對(duì)于上節(jié)課中的hello.c程序,可以在hello.c所在的目錄編寫如下Makefile$gcc–ohello.exehello.c3.make語法-9-make[選項(xiàng)][目標(biāo)][選項(xiàng)]-f文件,告訴make使用指定的文件作為Makefile文件-d,顯示調(diào)試信息-n,測(cè)試模式,并不真正執(zhí)行任何命令-s,安靜模式,不輸出任何信息[目標(biāo)]直接執(zhí)行Makefile中的指定目標(biāo)-10-$make
4.make執(zhí)行-11-$mkdirch07$cdch07
【任務(wù)2】編寫一個(gè)簡(jiǎn)單的calc程序,實(shí)現(xiàn)加法運(yùn)算。并且使用Makefile文件自動(dòng)編譯鏈接程序。1)建立程序目錄-12-//add.hintadd(inta,intb,intc);
【任務(wù)2】編寫一個(gè)簡(jiǎn)單的calc程序,實(shí)現(xiàn)加法運(yùn)算。并且使用Makefile文件自動(dòng)編譯鏈接程序。2)用vim編輯add.h文件,該文件為實(shí)現(xiàn)加法運(yùn)算函數(shù)的函數(shù)聲明-13-//add.c#include"add.h"intadd(inta,intb,intc){returna+b+c;}
【任務(wù)2】編寫一個(gè)簡(jiǎn)單的calc程序,實(shí)現(xiàn)加法運(yùn)算。并且使用Makefile文件自動(dòng)編譯鏈接程序。3)用vim編輯add.c文件,該文件為實(shí)現(xiàn)加法運(yùn)算函數(shù)的函數(shù)實(shí)現(xiàn)-14-【任務(wù)2】編寫一個(gè)簡(jiǎn)單的calc程序,實(shí)現(xiàn)加法運(yùn)算。并且使用Makefile文件自動(dòng)編譯鏈接程序。4)用vim編輯main.c文件,該文件為實(shí)現(xiàn)加法運(yùn)算功能的主函數(shù)//main.c#include<stdio.h>#include"add.h"intmain(){inta=1;intb=2;intc=3;intx=0;x=add(a,b,c);printf("a+b+c=%d\n",x);return0;}
-15-【任務(wù)2】編寫一個(gè)簡(jiǎn)單的calc程序,實(shí)現(xiàn)加法運(yùn)算。并且使用Makefile文件自動(dòng)編譯鏈接程序。5)用vim編輯編輯Makefile文件calc:add.omain.o gcc-ocalcadd.omain.oadd.o:add.cadd.h gcc-cadd.cmain.o:main.cadd.h gcc-cmain.c
-16-$make$./calc【任務(wù)2】編寫一個(gè)簡(jiǎn)單的calc程序,實(shí)現(xiàn)加法運(yùn)算。并且使用Makefile文件自動(dòng)編譯鏈接程序。6)執(zhí)行make命令,并測(cè)試程序-17-【任務(wù)2】編寫一個(gè)簡(jiǎn)單的calc程序,實(shí)現(xiàn)加法運(yùn)算。并且使用Makefile文件自動(dòng)編譯鏈接程序。
再執(zhí)行一次刪掉.o文件再執(zhí)行修改main.c文件再執(zhí)行-18-小結(jié)make工具,其實(shí)是個(gè)“自動(dòng)編譯管理器”Makefile文件由注釋和一系列的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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)銷合同范本
- 車輛運(yùn)輸肉類合同范本
- 供貨合同范本范文
- 養(yǎng)殖股東協(xié)議合同范本
- 華為購(gòu)車合同范本
- 區(qū)代理商合同范本
- 儲(chǔ)料倉(cāng)合同范本
- 制作標(biāo)識(shí)標(biāo)牌合同范本
- 合理借款合同范例
- 車輛掛靠協(xié)議書
- 2025年湖南交通職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)1套
- 2017年公務(wù)員多省聯(lián)考《申論》真題(吉林甲級(jí)卷)及參考答案(含詳細(xì)解析)
- 法規(guī)解讀丨2024新版《突發(fā)事件應(yīng)對(duì)法》及其應(yīng)用案例
- JGJ46-2024 建筑與市政工程施工現(xiàn)場(chǎng)臨時(shí)用電安全技術(shù)標(biāo)準(zhǔn)
- 肺炎的中醫(yī)護(hù)理方案
- 基本樂理及音樂常識(shí)類知識(shí)考試題及答案
- 轉(zhuǎn)學(xué)申請(qǐng)表、轉(zhuǎn)學(xué)證明
- 高頻電子線路完整章節(jié)課件(胡宴如)
- 鋁擠壓設(shè)備日常巡檢保養(yǎng)記錄
- 立風(fēng)井瓦斯管路安裝施工組織設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論