基本上有两种跟踪依赖关系的选项,-M
和-MM
。区别在于-MM
省略了它们包含的系统标题和标题。GCC依赖项跟踪:是-M比-MM更好吗?
我的问题:为什么会有人想要使用-M
?它大大增加了生成的.d
文件,因为系统标题通常包含大量其他系统标题。另外,系统头文件不能由make
构建,因此将它们作为依赖关系不会产生任何好处。我可以看到的唯一小好处是 - 如果缺少必需的系统标题 - make
报告丢失的标题而不是gcc
报告它。但是这有什么好处呢?
总结一下,我看不到为什么-M
完全有用。我错过了什么吗?哪些场景需要使用-M
而不是-MM
。