make預設尋找叫makefile或makefile的檔案,自己指定的話用 make -f 檔名
"#": 注釋符
命令列首的"@":取消本行命令回顯
1.規則的基本格式:
目標:依賴
[tab]命令 <---------- 命令開頭要乙個[tab]鍵
例0:
hello:main.o func1.o func2.o
gcc main.o func1.o func2.o -o hello
上面這兩行叫乙個規則
2.偽目標(phony taeget): 沒有任何依賴,只有執行動作的目標
用".phony"顯式指明偽目標
.phony: clean可以使用這一特性實現rebuild allclean:
rm -f *.o
3.變數:(便於修改)
obj=main.o func1.o func2.o系統預設變數:hello:$(obj)
gcc $(obj) -o hello
$^ 代表所有依賴檔案
$@ 代表目標
$< 代表第乙個依賴檔案
例0改寫如下:
hello:main.o func1.o func2.o
gcc $^ -o $@
4.模式規則
用"%"做萬用字元
"s%.c"表示所有以s開頭,以.c結尾的檔案
例:
%.o: %.c本例指出了如何從所有.c生成相應.o的規則commands
如果模式規則後不屑任何命令,就取消了這一模式規則的定義
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...
Makefile學習筆記
本文為學習筆記,僅供參考,如有好的建議歡迎指出!makefile規則 目標檔案 依賴檔案 tab 命令 命令前必須有乙個tab exp test main.c gcc main.c o test 隱式規則 o c 同名匹配 變數 類似於c中的巨集,引用方式 arg 變數名 值 引用變數可在之後定義 ...