相关疑难解决方法(0)

如何在 Windows 上使用 Clang 静态分析器?

我目前正在尝试在 Windows v10.0.18363.720 操作系统上使用 Microsoft Visual C++ 编译器 (MSVC) v19.25.28610.4将Clang Static Analyzer v9.0.1集成到我的CMake v3.16.5 构建系统中。

一切都是为架构 x86_64 构建的。LLVM 和 Clang 是从源代码构建的。

在万维网 (WWW) 上阅读一些内容后,似乎有多种方法可以使用 Clang 静态分析器。遗憾的是,文档很糟糕,而且在 Windows 操作系统上似乎有一些特殊的怪癖(主要与 相关clang-cl),因此集成起来并不简单。IMO,专业程序员将其集成到 C++ 事实标准构建系统中的时间不应超过一小时。

调用 Clang 静态分析器似乎至少有五种可能性:

  1. scan-build 脚本。
    • 需要 Perl 运行时环境。
    • 能够通过一次调用分析多个文件。
    • 能够生成 HTML(比其他可能性更先进)、plist 或 sarif 输出文件。
    • 我的问题:没有检测到任何错误,总是打印scan-build: No bugs found.到 STDOUT。
  2. clang-check 可执行。
    • 需要一个 JSON 编译数据库文件compile_commands.json
    • 能够通过一次调用分析多个文件。
    • 应该能够生成 HTML 报告文件。通过--extra-arg论证。
    • 我的问题:无法使其工作(请参阅下面的第二个脚本)。
  3. clang/clang++可执行文件。
    • 能够通过一次调用分析一个文件。
    • 我的问题:基本上有效,但对我来说似乎是最糟糕的可能性(由于缺少构建信息)。
  4. c++-analyzer.bat …

c++ static-analysis clang visual-c++ clang-static-analyzer

9
推荐指数
0
解决办法
2575
查看次数