使用 SonarQube 分析多平台代码
Analyzing Multi-Platform Code with SonarQube
我想使用 SonarQube 对为多个平台(Linux 和 Windows)编译的 C++ 应用程序执行静态分析。大部分代码是相同的,但根据目标平台的不同,ifdef/ifndef
可能会包含或排除某些代码。
因此,我的假设是在为每个平台编译时需要执行分析。这是一个正确的假设吗?或者 SonarQube 是否足够聪明,可以在 ifdef/ifndef
块中找到被编译器忽略的问题?
如果我需要在每个平台上进行分析,我可以在每个平台上进行分析,但将结果发布到一个 SonarQube 项目吗?
这里有2个问题:
1) 我需要进行 2 次分析吗?假设您使用的是 SonarCFamily,答案是 "yes"。 SonarCFamily 是 Developer Edition($)
的一部分
2) 我可以在每个平台上执行分析但只有 1 个项目吗?是和不是。每个分析都会产生一个单独的项目,但您可以将它们组合成一个元项目,称为应用程序。应用程序作为 Enterprise Edition($) 的一部分提供。企业版包含开发者版的所有功能。
我想使用 SonarQube 对为多个平台(Linux 和 Windows)编译的 C++ 应用程序执行静态分析。大部分代码是相同的,但根据目标平台的不同,ifdef/ifndef
可能会包含或排除某些代码。
因此,我的假设是在为每个平台编译时需要执行分析。这是一个正确的假设吗?或者 SonarQube 是否足够聪明,可以在 ifdef/ifndef
块中找到被编译器忽略的问题?
如果我需要在每个平台上进行分析,我可以在每个平台上进行分析,但将结果发布到一个 SonarQube 项目吗?
这里有2个问题:
1) 我需要进行 2 次分析吗?假设您使用的是 SonarCFamily,答案是 "yes"。 SonarCFamily 是 Developer Edition($)
的一部分2) 我可以在每个平台上执行分析但只有 1 个项目吗?是和不是。每个分析都会产生一个单独的项目,但您可以将它们组合成一个元项目,称为应用程序。应用程序作为 Enterprise Edition($) 的一部分提供。企业版包含开发者版的所有功能。