MakeFile $@,$^,$<

2021-07-26  本文已影响0人  branv

Makefile有三个非常有用的变量。分别是@,^,<代表的意义分别是:@--目标文件,^--所有的依赖文件,<--第一个依赖文件。
如果我们使用上面三个变量,那么我们可以简化我们的Makefile文件为:

这是简化后的Makefile

gcc -o $@ $^
main.o:main.c mytool1.h mytool2.h
gcc -c $<
mytool1.o:mytool1.c mytool1.h
gcc -c $<
mytool2.o:mytool2.c mytool2.h
gcc -c $<

经过简化后我们的Makefile是简单了一点,不过人们有时候还想简单一点。这里我们学习一个Makefile的缺省规则

gcc -c $<

这个规则表示所有的 .o文件都是依赖与相应的.c文件的。例如mytool.o依赖于mytool.c这样Makefile还可以变为:

这是再一次简化后的Makefile

main:main.o mytool1.o mytool2.o
gcc -o $@ $^
.c.o:
gcc -c $<

好了,我们的Makefile 也差不多了,如果想知道更多的关于Makefile规则可以查看相应的文档。

上一篇 下一篇

猜你喜欢

热点阅读