使用klockwork对xilinx SDK工程代码进行静态走查

本文介绍了如何使用Klockwork工具对Xilinx SDK工程代码进行静态走查,包括选择走查工具的原因,准备命令行编译环境,修改Klockwork配置文件以支持Xilinx SDK,以及详细阐述静态走查过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

写在前面

目前做的项目使用xilinx SDK进行软件开发,最近需要对代码进行静态走查,在调研了几款代码走查工具后,给出了一个走查xilinx SDK工程代码的解决方案。

走查工具的选择

最近需要对代码进行静态走查,在走查的过程中简单对比了几种代码静态走查工具:

cppcheck:该走查工具使用起来无比简单,对环境几乎没有要求,但是由于该走查工具没有跟踪编译的过程,因此会产生极多的,如找不到文件或定义之类的误报。

c++test:感觉是为vs开发量身定制的代码走查工具,包括静态和动态两种,可以生成测试用例,感觉对VS开发者尤其友好。其插件版支持如tornado、ccs、keil工程。但是由于时间紧迫,来不及细细研究如果针对Xilinx进行修改,因此该方案暂搁置。

klockwork:商用代码走查工具,可以跟踪编译过程,因此具备跨文件、跨模块分析能力,其内置了不同嵌入式平台的编译选项,分析出的问题准确率比较高,同时会有详细的问题产生的流程,感觉更适合嵌入式平台下的静态走查,因此最终选择了这款工具。

准备工作

平时编译代码几乎都是使用xilinx SDK直接进行编译,如果需要使用klockwork进行走查,那么首先需要建立使用命令行对代码进行编译的环境。

安装在windows平台下的SDK都几乎具备使用命令行进行编译的能力,但是需要对环境变量进行设置。网上教程教的都是使用SDK安装路径(如E:\Xilinx\SDK\2018.3)下的bat文件进行环境变量设置settings64.bat,但是实际操作后发现环境变量并没有设置成功,打开.bat文件后层层查看,发现其本质是将所有相关的路径写入PATH中,于是手动将需要的路径写入环境变量的。

原工程使用的是arm-none-eabi-工具链,因此最终加入环境变量的内容如下图所示。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值