如何快速调试c++包含文件问题

how to quickly debug C++ include file problems

本文关键字:文件 问题 包含 c++ 何快速 调试      更新时间:2023-10-16

我们经常遇到这样的问题:

1>Compiling...
1>a.cpp
1>c:appsb.h(22) : fatal error C1083: Cannot open include file: 'boost/shared_ptr.hpp': No such file or directory

有时可能会很乏味,因为在一个大项目中有许多包含文件,甚至是嵌套的包含文件。

跟踪/哪个包含文件是包含有问题的包含文件的罪魁祸首(父文件)的最好方法是什么?

问题是它有嵌套的include,所以需要花一些精力才能判断哪个文件实际上包含了b.h.

看起来你是在Windows上(因此可能使用微软C/c++编译器)。在这种情况下,可以使用/showIncludes选项。

这允许你"直观地"看到哪个头文件包含哪个,给你更多的信息。

更新:显然GCC有一些类似的选项。

Autotools具有此功能。您可以检查某些头文件是否存在。我相信其他构建工具也有类似的功能…