makefile學習筆記 書寫規則 規則舉例

2021-08-19 15:14:07 字數 592 閱讀 1678

20180413 makefile學習筆記-書寫規則(規則舉例)

規則包含兩個部分,乙個是依賴關係,乙個是生成目標的方法。

在makefile中,規則的順序是很重要的,因為,makefile中只應該有乙個最終目標,其他的目標都是被這個目標所連帶出來的,所以一定要讓make知道你的最終目標是什麼。一般來說,定義在makefile中的目標可能會很多,但是第一條規則中的目標將被確立為最終的目標,。如果第一條規則中的目標有很多個,那麼,第乙個目標會成為最終的目標。make所完成的也就是這個目標。

規則舉例:

foo.o:foo.c defs.h #foo模組

cc -c -g foo.c

看到這個例子,大家很熟悉吧,foo.o是我們的目標,foo.c和defs.h是目標所依賴的原始檔,而只有乙個命令"cc -c -g foo.c"(以tab鍵開頭)。這個規則告訴我們兩件事:

1、檔案的依賴關係:foo.c依賴於foo.c和defs.h的檔案,如果foo.c和defs.h的檔案日期比foo.o檔案日期更新,或是foo.o不存在,那麼依賴關係發生。

2、foo.c通過cc命令生成foo.o檔案(當然foo.c檔案包含(include)了defs.h檔案)

makefile學習筆記 書寫規則 偽目標

20180416 makefile學習筆記 書寫規則 偽目標 下面的例子中的乙個 clean 的目標,就是乙個 偽目標 clean rm o temp clean的作用是當我們生成了許多編譯檔案時,我們應該提供乙個清楚他們的 目標 以備完整地重編譯而用 以 make clean 來使用該目標 因為,...

makefile學習筆記 makefile概述

20180411 makefile學習筆記 makefile概述 makefile主要是在unix下軟體編譯時寫的,window下一般不用 unix裡makefile做的事 相當於window裡ide所做的事 會不會寫makefile,從乙個側面說明了乙個人是否具備完成大型工程的能力。makefil...

Makefile學習筆記

makefile for boot asm nasm 定義變數 asmflags i include run qemu system i386 hdd boot.img boot.img boot.asm asm boot.asm f bin o boot.img install run clean...