makefile:
makefile文件用于管理和組織代碼工程的編譯和鏈接,被make工具解析并完成相關動作
make:
工程管理工具
語法:
?? ?要生成的文件:依賴的所有文件
時間戳:
編譯文件時,時間戳更新的文件需要重新加入編譯,時間戳沒有改變的不需要重新編譯
app:main.c add.c sub.c
?? ??? ?gcc main.c add.c sub.c -o app -I./include -lm
舉例:
?? ??? ?OBJ=
?? ??? ?OBJ+=
?? ??? ?SRC=
?? ??? ?CC=
?? ??? ?OBJ=app?? ?
?? ??? ?SRC=main.c?
?? ??? ?SRC+=add.c?
?? ??? ?SRC+=sub.c
?? ??? ?CC=gcc
?? ??? ?INCLUDE=./include
?? ??? ?FLAG=-lm
?? ??? ?$(OBJ):$(SRC)
?? ??? ??? ?$(CC) $(SRC) -o $(OBJ) -I$(INCLUDE) $(FLAG)
$@:要生成的文件名(目標文件) a.out
$^:所有依賴的文件?
$<:第一個依賴的文件
$(OBJ):$(SRC)
?? ??? ??? ?$(CC) $^ wanc-o $@ -I$(INCLUDE) -L$(LIBS)
完成makefile文件編寫后,使用make進行多文件管理