-M gcc选项的用例是什么?

时间:2015-03-17 09:08:30

标签: c gcc build

gcc的-M选项提供了makefile兼容的依赖列表。我已经在我的一个项目*.c文件上尝试了它,并且我得到了很长的各种系统头文件列表:

$ gcc -I/home/marko/foo/local/include -I/home/marko/foo/src/misc.git -M src/foo.c | wc -l
65

这是什么用例?为什么有人需要这么长的不那么有用的依赖列表?或者它是否以某种方式用于autotools而不是手动使用?

1 个答案:

答案 0 :(得分:0)

我认为这主要是一种迂腐的事情。您可能希望出于某种原因跟踪系统依赖性。例如,您可能正在使用-isystem--sysroot或类似的东西,并希望在更新sysroot中的文件时,您的依赖关系跟踪能够正常工作。不太可能,您可能希望在更新操作系统后正确地重建项目。

我猜测使用-M通常是无害的。