1. 程式人生 > 其它 >Makefile檔案編寫規則概述

Makefile檔案編寫規則概述

Makefile的編寫
target:目標檔案1 目標檔案2
gcc -o 欲建立的可執行檔案 目標檔案1 目標檔案2
目標檔案也就是依賴檔案

Makefile中#代表註釋(單行)
與bash shell指令碼的語法有點不太相同,變數的基本語法為:
1.變數與變數內容以【=】隔開,同時兩邊可以具有空格;
2.變數左邊不可以有, 例如上面範例的第一行LIBS左邊不可以是
3.變數與變數內容在【=】兩邊不能具有【:】;
4.在習慣上,變數最好是以【大寫字母】為主;
5.運用變數時,以${變數}或$(變數)使用;
6.在該shell的環境變數是可以被套用,例如提到的CFLAGS這個變數;
7.在命令列模式也可以設定變數。

a.out:main.o libadd.so
	cc main.o libadd.so -o a.out

main.o:main.c
	cc -c main.c

libadd.so:add.o
	cc -shared add.o -o libadd.so

add.o:add.c
	cc -c add.c

clean:
	rm -f *.o

=============================================================
a.out是終極目標,緊跟其後的是需要的依賴檔案。make命令會自動向下找生成依賴的子目標main.o和libadd.so。


但是單執行make命令不加引數只會預設執行終極目標,所以clean那裡的命令是不會執行的,單獨執行make clean(tab可補全)即可刪除中間檔案