SonarQube扫描Android.mk编译的C/C++项目
一、搭建C/C++环境
1.安装编译器
首先,你需要安装一个C/C++编译器。对于Windows系统,你可以选择安装MinGW或者Microsoft Visual Studio。对于MacOS系统,你可以使用Xcode自带的Clang编译器。对于Linux系统,你可以安装GCC或者Clang编译器。
2.设置环境变量(Windows系统)
如果你使用的是Windows系统,你需要将编译器的可执行文件路径添加到系统的环境变量中。这样,你就可以在任何目录下使用编译器命令。具体的步骤是:右键点击“计算机”或“此电脑”,选择“属性”->“高级系统设置”->“环境变量”,在“系统变量”中找到“Path”变量,点击“编辑”,然后将编译器的可执行文件路径添加到变量值中。
3.配置集成开发环境(IDE)
为了更方便地编写和管理C/C++代码,你可以安装一个集成开发环境(IDE),例如Visual Studio Code、Eclipse、Code::Blocks等。这些IDE提供了代码编辑、调试、编译和构建工具等功能,使得开发过程更加高效。
4.编写代码并进行编译
使用你选择的IDE或者文本编辑器编写C/C++代码,并将代码保存为以 .c (C语言)或者 .cpp (C++语言)为后缀的文件。然后,通过命令行或者IDE提供的编译工具,将代码编译成可执行文件。
二、下载NDK
1.官网下载地址
https://developer.android.google.cn/ndk/downloads?hl=zh-cn
2.验证是否安装成功
配置完成后使用在任意目录下,使用ndk-build --version验证是否安装成功。
三、使用NDK编译项目
1.添加编译文件
在项目根目录下增加Android.mk和Application.mk文件,注意需要在jni目录下。
2.编译项目
使用ndk-build命令编译项目
四、生成compile_commands.json文件
1.使用命令生成编译数据库json文件
ndk-build compile_commands.json
五、扫描项目
1.官方文档
https://docs.sonarsource.com/sonarqube/10.1/analyzing-source-code/languages/c-family/#using-compilation-database
2.配置 sonar-project.properties
3.使用扫描命令扫描
使用sonar-scanner命令扫描
扫描完成