編寫Makefile文件有以下幾個步驟:
確定目標文件:Makefile文件中首先需要確定要生成的目標文件(可執行文件、庫文件等)。
定義依賴關系:確定目標文件所依賴的源文件和其他目標文件。
編寫規則:為每個目標文件編寫規則,即指定如何生成目標文件的命令。
定義變量:定義需要使用的變量,例如編譯器、編譯選項等。
編寫偽目標:如果需要定義一些特殊的目標,如清理目標、安裝目標等,可以編寫對應的偽目標。
編寫默認目標:如果需要指定默認生成的目標文件,可以編寫默認目標。
示例Makefile文件:
# 定義變量
CC = gcc
CFLAGS = -Wall -g
# 默認目標文件
all: myprog
# 目標文件依賴關系及規則
myprog: main.o func.o
$(CC) $(CFLAGS) -o myprog main.o func.o
main.o: main.c
$(CC) $(CFLAGS) -c main.c
func.o: func.c
$(CC) $(CFLAGS) -c func.c
# 偽目標
clean:
rm -rf *.o myprog
在命令行中執行make
命令即可按照Makefile文件指定的規則編譯生成目標文件。