我们为我们的系统使用 GNU Make。在我们的 makefile 的末尾,我们有一个名为 Makedepends 的包含,它使用 gcc 上的 -MM 开关生成一堆 .d 文件。然后,我们使用 include $(CXXFILES:.cc=.d) 行为每个 .cc 文件包含 .d 文件。但是当我们删除文件或移动文件时,依赖步骤会中断,我们必须手动删除 .d 文件(即使 make clean 也不起作用,因为依赖项失败)
有没有办法生成这些依赖 .d 文件或包含这些依赖 .d 文件,从而优雅地处理文件删除或重定位?
编辑:例如:我有serial.cc,makefiles生成一个serial.d文件,它依赖于buffer.h,但后来我改变了它,所以我不再需要buffer.h,我删除了buffer.h。下次我运行 make 时,它会阻塞,因为它包含仍然使 serial.o 依赖于 buffer.h 的 .d 文件。