如何在makefile中指示模式规则的相对(或绝对)路径?以及如何检测源文件中包含的标头?

时间:2016-08-01 06:23:26

标签: c gcc makefile

我们可以在bash中添加模仿%.c%.o的模式规则,模仿*.c*.o(它会搜索所有扩展名为.c的文件或.o。如果您有多个目标,这非常有用,因此您不必编写所有规则。我想知道如果您的目标文件(.c或{ {1}})位于上一个目录中。在bash中,可以编写.o,但../*.c在我测试的makefile中不起作用。你怎么在makefile中做这样的事情?

我的第二个问题:有时候想要添加这样的标头依赖关系:

../%.c

添加标头依赖项是个好主意,因为有时您不知道所包含的库是否有一些更改。

在这里,我们必须手动输入HEADER=factorial.h %.o: %.c $(HEADERS) gcc -o program $% 的文件名。

如何制作它以便扫描目标文件包含的标题? 例如:我的HEADERmain.c

如何制作,以便检测到#include "dog.h"已包含main.c

0 个答案:

没有答案