在创建makefile时将依赖项文件放在子目录中

时间:2013-06-14 14:22:20

标签: c makefile dependencies subdirectory

我正在尝试创建依赖项文件并将它们放入名为deps(已创建)的子目录中。在阅读gcc的手册页后,我认为-MF是要走的路,但是在尝试下面的代码时,没有创建依赖文件,也没有显示错误消息。

DDIR=deps

$(DDIR)/%.d: %.c
    $(CC) $(CCFLAGS) -MF"$@" -MG -MM -MP -MT"$@" -MT"$(<:.c=.o)" "$<"´

是否可以指定依赖文件的放置位置,还是必须将其放在与makefile相同的文件夹中?

1 个答案:

答案 0 :(得分:0)

当然,您可以将必备文件放在所需的位置。您的规则指定如何构建$(DDIR)/%。这真的是你想要建立的东西吗?您是否看到make打印的此命令行,其中包含这些选项?如果你从shell运行相同的命令行,它会做你想做的吗?

目录ddir是否存在?

根据您提供的信息,我怀疑make不使用您的规则,而是使用内置规则,该规则没有您提供的各种-M选项。

最好是在显示您输入的make命令时,在询问有关行为的问题时显示打印的输出。