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...