c – 如何确定包含路径的来源?

我熟悉将-v添加到Clang编译命令行以查看包含搜索路径顺序的技巧,但这只是显示正在搜索的目录.它没有显示为什么要搜索这些目录.

是否有一些选项可以打印包含搜索路径设置来源的详细信息? (例如命令行选项,环境,编译设置等) – 任何设置可以提供有关它们所处的顺序的更多信息,也将受到赞赏.

请注意,我不知道特定包含文件的来源(例如,您可以使用-M或-H获得的信息),我对编译器搜索特定包含路径的原因感兴趣.

背景:我们正在尝试调试特定路径(/usr/local/include)在特定平台的搜索目录列表中“过高”的原因(Mac 10.14).我们认为我们的构建系统并没有明确地要求它,所以更多地了解它的来源将有助于我们弄清楚发生了什么.

最佳答案 如何选择clang默认包含路径是没有记录的.它(以及Mac的
gcc)显然不遵循
gcc docs.它记录了clang如何
these can be managed.

点赞