0

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

DDIR=deps

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

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

4

1 回答 1

0

当然,您可以将必备文件放在您想要的位置。您的规则指定如何构建 $(DDIR)/%.d。这真的是你想要构建的东西吗?你看到 make 打印的这个命令行,里面有这些选项吗?如果您从 shell 运行相同的命令行,它会执行您想要的操作吗?

目录是否ddir存在?

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

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

于 2013-06-14T15:18:54.223 回答