Makefile 檔案製作?

2016-10-30 1:26 pm
要如何製作Makefile檔案?

例如有4個檔案
1.c 2.c 3.c 4.c
1.c 包含了 1.h 2.h
2.c 包含 2.h 3.h
3.c 包含 3.h
4.c 包含 1.h 4.h
那如果要以All dep clean 去執行
該怎麼去執行阿
GOOGLE找好多都有看沒有懂
拜託各位大大好心求解

回答 (1)

2016-11-01 3:33 pm
target : prerequisites
recipe

rule由target,prerequisites和recipe組成。
target是要產生的檔案的檔名,若target檔案不存在或prerequisites的檔案比target檔案新則執行recipe。
prerequisites是產生target會用到的檔案,如果不存在就按照對應的rule建立。
recipe是要執行的指令,開頭必須加tab。

makefile的內容
.PHONY : all clean

all : 1.exe 2.exe 3.exe 4.exe

1.exe : 1.h 2.h 1.c
gcc 1.h 2.h 1.c -o 1.exe

2.exe : 2.h 3.h 2.c
gcc 2.h 3.h 2.c -o 2.exe

3.exe : 3.h 3.c
gcc 3.h 3.c -o 3.exe

4.exe : 1.h 4.h 4.c
gcc 1.h 4.h 4.c -o 4.exe

clean :
rm -f *.exe

.PHONY是內建的target名稱,後面的prerequisites會視為假目標(phony targets)。使用者呼叫假目標時make會無條件執行假目標的recipe,無論target檔名的檔案是否存在或上次修改時間是什麼時候。
輸入"make all",會產生4個檔案。
輸入"make clean",會清除所有.exe結尾的檔案。
輸入"make 1.exe",會產生1個檔案。


收錄日期: 2021-05-04 02:18:04
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20161030052606AAfoXcZ

檢視 Wayback Machine 備份