如何为C ++ RTP应用程序项目配置SonarQube Dev Edition

时间:2019-04-11 14:25:37

标签: c++ sonarqube vxworks sonarscanner wind-river-workbench

我正在Wind Wind Workbench 3.3中为VxWorks 6.9开发几个或C ++实时过程应用程序项目。我想集成SonarQube开发人员版以获得静态分析结果。

VxWorks使用Wind River GCC 4.3.3编译器编译应用程序,这是GCC for VxWorks的自定义样式。我已经配置了构建包装器,声纳扫描仪和声纳服务器。成功执行声纳扫描仪后,我可以看到该项目出现在SonarQube中。

我遇到的问题是,当我拥有一个简单的C ++文件时,如下所示:

我尝试仅使用

来编译SonarQube提供的VxWorks编译器提供的构建包装器示例。
c++pentium -o main.o main.cpp

SonarQube实例显示了错误。

我还创建了一个新的基本RTP应用程序项目,并包含SonarQube的main.cpp文件。由于某种原因,当我没有任何C ++标准库头文件时,会收到错误,但是当我#include类似我得到零个错误。似乎构建包装器或声纳扫描器找不到与C ++有关的任何东西,或者在包含与C ++有关的任何东西时都找不到错误。

main.cpp

#include <iostream>

int main()
{
    int arr[2];

    for (int i = 0; i < 3; ++i) {
        arr[i] = 0;
    }

    return 0;
}

工作台构建命令

build-wrapper-win-x86-64 --out-dir bw_output %makeprefix% make --no-print-directory

sonar-project.properties

sonar.projectKey=myFirstSonarQubeProject
sonar.projectName=My First C++ SonarQube Project
sonar.projectVersion=1.0
sonar.sources=.
sonar.cfamily.build-wrapper-output=COREgnu_LP64_RTP/bw_output
sonar.sourceEncoding=UTF-8

1 个答案:

答案 0 :(得分:0)

SonarCFamily的最新版本6.2增加了对Wind River VxWorks GCC -mrtp标志的支持,以构建和分析RTP应用程序。