基于Source Insight_Scan的C/C++静态代码检查工具安装说明
//文中软件地址 Source Insight :链接:https://pan.baidu.com/s/1EHENTG4Ll3TzLyqMQZuhbQ 密码:q29m
//Source Insight_Scan地址:链接:https://pan.baidu.com/s/1vtsCouAu7RScGUCvN-KaPg 密码:4ess
在嵌入式软件开发中,对代码质量保证一直都是需要重要考虑的问题,利用人肉眼走查等等方式不但效率低下,能检查出来的错误也有限,而cppcheck、pclint这些工具使用繁琐,安装耗时耗力。在经过了几天查找之后,笔者发现了在Source Insight中集成了一个叫Source Insight_Scan的插件,安装非常简单,同时只需要将整个工程导入Source Insight中直接走查(Source Insight不会对代码进行编译)。
sourceinsight-scan 是一款集成在 SourceInsight 中的c/c++代码静态分析插件,集成了cppcheck,coverity,pclint等业界优秀的静态分析工具的优点。
旨在帮助开发人员,在IDE中快速发现编译器无法发现的非语法错误,降低修复成本。
无需编译,平均扫描速度高达10W行/分钟,快速帮您发现潜在的质量风险,包括空指针,越界,内存泄漏及潜在的逻辑错误,平均准确率高达80%。
支持个性化定制需求,包括规则配置,误报屏蔽,路径屏蔽,配置自定义判空宏等。
SourceInsight_Scan配置&使用说明
1. 安装说明:
双击打开SourceInsight_Scan_Setup.exe进行安装
2. 配置说明:
Ø Step1:打开菜单栏上 ProjectOpen ProjectBase 工程(中文版本SI【基本】工程)
Ø Step2:添加插件文件到Base工程中
单击Project/Add and Remove Project Files (项目/添加和移除项目文件), 在File Names:中拷贝C:SourceInsight_ScanSourceInsight_Scan.em,后点击Add添加到Base项目中。
如图所示: Add后SourceInsight_Scan.em出现在下侧的ProjectFiles后,直接点击close即可。
然后请在Project/Close Project (项目/关闭项目) 点击,关闭Base项目。
如果出现如图所示,是否需要同步符号,点击【是】。
Ø Step3:添加菜单
选择Options/Menu Assignment(中文版本为:选项,菜单关联),找到Macro宏:
Si_Scan_Current_Project (扫描整个项目)
Si_Scan_Current_File (扫描当前打开文件)
Si_Scan_Config (扫描规则配置)
依次添加到你需要的Menu中,如Work菜单。
如图:选中Marco=>选择<end of menu>=>Insert
Tips:可以在Command中,输入Si_Scan_快速找到这几个命令
//中文版本添加界面如图:
Ø Step4:设置Jump按键
选择Options/Key Assignment(中文版本为:选项,菜单关联),找到Macro宏:
Si__Key_Assign (设置Jump键,用于弹出错误List),如图
//注:此快捷键必须设置为Ctrl+Alt+Shift+J。
Tip:在SI右上角Work目录出现对应的Scan配置项即表示配置成功!
全部配置只需要配置一次既可以在SI全部项目中使用。
3. 使用说明
Ø 打开您的C/C++项目,在Work中有三个菜单项
Si_Scan_Current_Project (扫描整个项目)
Si_Scan_Current_File (扫描打开的一个文件。多个文件打开时,默认扫描激活窗体文件。)
Si_Scan _Config (扫描规则配置)
点击Si_Scan_Current_Project / Si_Scan_Current_File 启动扫描后,结果如下。
qoc_samples示例项目扫描结果:
可以通过 双击.或者右键 直接在SourceInsight中打开源代码,定位到指定报错行。
点击右键,可以对误报错误进行屏蔽(该文件所有md5相同的错误都将一起被屏蔽)
点击右键,可以切换报错list和屏蔽list。
【注1】SourceInsight的项目工程路径可能和代码路径不一致。
当您的某项工程进行全量扫描时,添加代码扫描的文件夹
【注2】
扫描工程和SourceInsight完全异步,不影响您的正常使用SourceInsight,启动扫 描后,等待结果即可
Ø 扫描配置自定义配置:
点击Si_Scan _Config,弹出规则自定义窗体,直接进行配置:
详细可以在Si_Scan _Config配置对话框中查阅,如图: