先来个例子:
TARGET = main
SRCS = $(wildcard *.c)
OBJS = $(SRCS:%.c=%.o)
CC = g++
$(TARGET):$(OBJS)
$(CC) -o $@ $^ #g++ -o $(TARGET) $(OBJS)
%.o:%.c
$(CC) -c $<
.PHONY:clean #没有这一句也OK。但是,如果在当前目录下有文件名为clean会报错。
clean:
-rm -f $(TARGET) $(OBJS) #当前文件删除有问题。
PS:
1、$@--目标文件,$^--所有的依赖文件,$<--第一个依赖文件。
PS:
1、$@--目标文件,$^--所有的依赖文件,$<--第一个依赖文件。(未完待续)