叮叮当当,找不到头文件



注意:这是在RHEL 7.2和clang 8.0.1中完成的。

我正在运行命令

clang-tidy test.C -- -I/path/to/header.h

我收到以下错误:

1 error generated.
Error while processing test.C.
test.C:28:10: error: 'header.h' file not found [clang-diagnostic-error]
#include "header.h"
^
Found compiler error(s).

当我使用 g++ 构建时,它工作正常。上面的包含是文件的第一个包含语句,之后还有更多。文件结构很复杂,因此很难显示文件的位置。我以为 -I 参数会找到标题,但它没有。那么,我如何才能找到这些标题呢?

Clang 工具通常需要一个编译数据库:compile_commands.json。 它提供了构建 cpp 单元(即包含目录(所需的信息。

您可以使用一些外部工具从Make,CMake等生成此文件。

https://github.com/rizsotto/Bear 就是其中之一。

最新更新