最近学习makefile的编写,接触到了一个静态目标的概念。现在还没有完全弄明白,自己写的测试makefile也没有完全运行通过。不过静态目标的概念以及运行过程基本看到了。
静态目标通过通配符自动推到目标文件与c文件的关系,推导结束后依次进行编译。
值得注意的一个经验型技巧:现在看了很多makefile的教程,里面的c编译器基本上都是cc。如果想使用gcc等编译器又想直接抄示范的makefile可以在makefile中定义CC的值为gcc等编译器,这样cc就可以直接引用gcc等其他的编译器。
以下是关于静态目标的一小段makefile示范:
运行结果如下:
最后运行报错,目前还没有通过学习到的知识解决这个问题。但是值得注意的是自动推到的过程以及推导后的编译过程已经看得出来。