一些常见的自动化变量说明如下:
(1) $@ ——目标文件的名称;
(2) $^ ——所有的依赖文件,以空格分开,不包含重复的依赖文件;
(3) $< ——第一个依赖文件的名称。
(4) $? 表示比目标还要新的依赖文件列表
按照 Makefile 规则规规矩矩的写: main: main.o hello.o hi.o gcc -o main main.o hello.o hi.o main.o: main.c cc -c main.c hello.o: hello.c cc -c hello.c hi.o: hi.c cc -c hi.c clean: rm *.o rm main
改为用上述符号进行替代 main: main.o hello.o hi.o gcc -o $@ $^