makefile

makefile定義了一系列的規(guī)則來指定凌埂,哪些文件需要先編譯,哪些文件需要后編譯,哪些文件需要重新編譯痕届,甚至于進行更復(fù)雜的功能操作,因為 makefile就像一個Shell腳本一樣寺旺,其中也可以執(zhí)行操作系統(tǒng)的命令

先先看一下什么是makefile

makefile定義了一系列的規(guī)則來指定爷抓,哪些文件需要先編譯,哪些文件需要后編譯阻塑,哪些文件需要重新編譯蓝撇,甚至于進行更復(fù)雜的功能操作,因為 makefile就像一個Shell腳本一樣陈莽,其中也可以執(zhí)行操作系統(tǒng)的命令渤昌。

makefile帶來的好處就是--“自動化編譯”,一旦寫好,只需要一個make命令走搁,整個工程完全自動編譯独柑,極大的提高了軟件開發(fā)的效率。make是一個命令工具私植,是一個解釋makefile中指令的命令工具忌栅,一般來說棋返,大多數(shù)的IDE都有這個命令男摧,比如:Delphi的make,Visual C++的nmake,Linux下GNU的make.可見,makefile都成為了一種在工程方面的編譯方法漠其。

注IDE:集成開發(fā)環(huán)境IDE贫悄,Integrated Development Environment )是用于提供程序開發(fā)環(huán)境的應(yīng)用程序瑞驱,一般包括代碼編輯器編譯器窄坦、調(diào)試器和圖形用戶界面工具唤反。集成了代碼編寫功能凳寺、分析功能、編譯功能彤侍、調(diào)試功能等一體化的開發(fā)軟件服務(wù)套肠缨。所有具備這一特性的軟件或者軟件套(組)都可以叫集成開發(fā)環(huán)境。如微軟的Visual Studio系列拥刻,Borland的C++ Builder怜瞒、Delphi系列等。該程序可以獨立運行般哼,也可以和其它程序并用吴汪。IDE多被用于開發(fā)HTML應(yīng)用軟件。例如蒸眠,許多人在設(shè)計網(wǎng)站時使用IDE(如HomeSite漾橙、DreamWeaver等),因為很多項任務(wù)會自動生成楞卡。

make

根據(jù)Makefile文件編譯源代碼霜运、連接、生成目標文件蒋腮、可執(zhí)行文件淘捡。

make clean

清除上次的make命令所產(chǎn)生的object文件(后綴為“.o”的文件)及可執(zhí)行文件。

make install

將編譯成功的可執(zhí)行文件安裝到系統(tǒng)目錄中池摧,一般為/usr/local/bin目錄焦除。

make dist

產(chǎn)生發(fā)布軟件包文件(即distribution package)。這個命令將會將可執(zhí)行文件及相關(guān)文件打包成一個tar.gz壓縮的文件用來作為發(fā)布軟件的軟件包作彤。

它會在當前目錄下生成一個名字類似“PACKAGE-VERSION.tar.gz”的文件膘魄。PACKAGE和VERSION,是我們在configure.in中定義的AM_INIT_AUTOMAKE(PACKAGE, VERSION)。

make distcheck

生成發(fā)布軟件包并對其進行測試檢查竭讳,以確定發(fā)布包的正確性创葡。這個操作將自動把壓縮包文件解開,然后執(zhí)行configure命令绢慢,并且執(zhí)行make,來確認編譯不出現(xiàn)錯誤灿渴,最后提示你軟件包已經(jīng)準備好,可以發(fā)布了胰舆。

make distclean

類似make clean,但同時也將configure生成的文件全部刪除掉逻杖,包括Makefile文件。


建立頭文件:stu.h

注:在C語言家族程序中思瘟,頭文件被大量使用。一般而言闻伶,每個C++/C程序通常由頭文件(header files)和定義文件(definition files)組成滨攻。頭文件作為一種包含功能函數(shù)、數(shù)據(jù)接口聲明的載體文件,主要用于保存程序的聲明(declaration)光绕,而定義文件用于保存程序的實現(xiàn) (implementation)女嘲。 .c就是你寫的程序文件

建立定義文件:stu.c


主程序:main.c(這里的例子是2.c)


makefile文件:


注:.o 就是object, 也就相當于windows下編譯的obj文件, 俗稱目標文件

是指源代碼經(jīng)過編譯程序產(chǎn)生的能被cpu直接識別二進制代碼诞帐。由編譯器生成欣尼,

具體的生成方法在不同的開發(fā)環(huán)境上是不同的.

百度百科說.o文件是對象文件

里面包含的內(nèi)容就是01這樣的機器可執(zhí)行的執(zhí)令

當你程序要執(zhí)行時還需要進行鏈接(link).

連接程序再將這個文件與系統(tǒng)庫文件連接就生成可執(zhí)行文件

就是把多個.o文件鏈成一個可執(zhí)行文件。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末停蕉,一起剝皮案震驚了整個濱河市愕鼓,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌慧起,老刑警劉巖菇晃,帶你破解...
    沈念sama閱讀 212,080評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異蚓挤,居然都是意外死亡磺送,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,422評論 3 385
  • 文/潘曉璐 我一進店門灿意,熙熙樓的掌柜王于貴愁眉苦臉地迎上來估灿,“玉大人,你說我怎么就攤上這事缤剧∠谠” “怎么了?”我有些...
    開封第一講書人閱讀 157,630評論 0 348
  • 文/不壞的土叔 我叫張陵鞭执,是天一觀的道長司顿。 經(jīng)常有香客問我,道長兄纺,這世上最難降的妖魔是什么大溜? 我笑而不...
    開封第一講書人閱讀 56,554評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮估脆,結(jié)果婚禮上钦奋,老公的妹妹穿的比我還像新娘。我一直安慰自己疙赠,他們只是感情好付材,可當我...
    茶點故事閱讀 65,662評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著圃阳,像睡著了一般厌衔。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上捍岳,一...
    開封第一講書人閱讀 49,856評論 1 290
  • 那天富寿,我揣著相機與錄音睬隶,去河邊找鬼。 笑死页徐,一個胖子當著我的面吹牛苏潜,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播变勇,決...
    沈念sama閱讀 39,014評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼恤左,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了搀绣?” 一聲冷哼從身側(cè)響起飞袋,我...
    開封第一講書人閱讀 37,752評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎豌熄,沒想到半個月后授嘀,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,212評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡锣险,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,541評論 2 327
  • 正文 我和宋清朗相戀三年蹄皱,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片芯肤。...
    茶點故事閱讀 38,687評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡巷折,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出崖咨,到底是詐尸還是另有隱情锻拘,我是刑警寧澤,帶...
    沈念sama閱讀 34,347評論 4 331
  • 正文 年R本政府宣布击蹲,位于F島的核電站署拟,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏歌豺。R本人自食惡果不足惜推穷,卻給世界環(huán)境...
    茶點故事閱讀 39,973評論 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望类咧。 院中可真熱鬧馒铃,春花似錦、人聲如沸痕惋。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,777評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽值戳。三九已至议谷,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間堕虹,已是汗流浹背卧晓。 一陣腳步聲響...
    開封第一講書人閱讀 32,006評論 1 266
  • 我被黑心中介騙來泰國打工叶洞, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人禀崖。 一個月前我還...
    沈念sama閱讀 46,406評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像螟炫,于是被迫代替她去往敵國和親波附。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,576評論 2 349

推薦閱讀更多精彩內(nèi)容