gcc 编译命令选项$@ $^ $<

一些常见的自动化变量说明如下:
(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 $@ $^


版权声明:本文为weixin_42615308原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。