# 编译后的可执行文件名称
BIN=stack
# 收集目录下的所有.c文件
SRC=$(wildcard *.c)
# 调用makefile 中的函数patsubst, 用.o文件代替.c文件
OBJ=$(patsubst %.c,%.o,$(SRC))
# 定义变量CC 使用变量$(CC)
CC=gcc
# 目标:依赖 要生成BIN(可执行程序)必须依赖OBJ(.o文件)
# stack:1.c,2.c,3.c...
$(BIN):$(OBJ)
# 执行命令 gcc -o stack 1.c,2.c,3.c...
$(CC) -o $(BIN) $(OBJ)
# 将所有的.c文件生成对应的.o文件
# %.o,$@ 目标文件
# %.c,$< 源文件
%.o:%.c
$(CC) -c -o $@ $<
# 执行make clean的时候删除 可执行文件跟.o文件
clean:
rm $(BIN) $(OBJ)
标签:BIN,文件,%.,OBJ,CC,Makefile,stack
From: https://www.cnblogs.com/wtil/p/17079942.html