klocwork操作步骤
Klocwork操作步骤
一、启动Klocwork:
1. Klocwork包括Server Build版本和User Desktop版本,可根据实际情况安装。安装可以按照默认目录安装,也可以创建三个新的路径,如C:\KW\0\server、C:\KW\0\pr和C:\KW\0\client,分别安装Server版,指定工程路径和User版,以方便命令行操作。
2. Klocwork在使用时,将license文件放在project_root工程路径下license目录。
要启动所有的Klocwork服务,进入命令行操作,使用下面的命令
kwservice start
如果用户有多个projects_root目录,且共用一个license文件时,需要将license文件复制到其他的projects_root目录的license路径中。每次只能启动一个工程目录。
Klocwork启动成功,如下图:
关于kwservice命令的其他选项可以通过直接输入kwservice获得。也可以编写批处理文件,简化操作。
二、Klocwork指定编译器配置文件
Klocwork能够分析C,C++,C#和Java代码。准确的构建信息和客户代码是代码分析系统的两个输入。接下来,我们就将介绍下与编译器构建相关的配置文件:
_filter.xml
kwcc_config.xml
kwfilter.conf
_filter.xml
编译器配置文件是在用kwinject命令进行构建说明时使用的指定编译器配置文件,用来确定采用哪种编译方式。文件名称为_filter.xml。
创建一个定制编译器配置文件:
首先对在/config 中的现有配置文件做一个备份. 使其按照下面的格式进行命名: _filter.xml, 其中 是编译器的名称,并将它保存在下面的路径下:
/config
_filter.xml文件中包含着相关编译器类型的的编译选项。
kwcc_config.xml
指定编译器路径,系统头文件路径和宏定义选项。详细内容见第四部分,在Tornado2.2中使用Klocwork
kwcc_config.xml指定在本机上采用的具体编译器。已有的语言扩展已包括gnu (GCC), ms (Visual Studio),arm (ARMCC), std (标准 C/C++); 缺省即是std。
kwfilter.conf
/config下的kwfilter.conf文件,负责编译器名称与编译器选项配对。kwfilter.conf文件中,将同属一种编译器类型的语言扩展采用过滤器的方式配准起来,下面是kwfilter.conf文件中的一段,针对GNU C/C++编译器的:
# Default GNU C/C++ compiler
filtergnugcc, g++, cc, c++,ccsimpc
【语法:filter 编译器名称1, 编译器名称2,…】
这样,当进入klocwork对客户代码的构建阶段,系统会通过编译器名称获取相关的构建信息,使Klocwork工具能够按照其标准的系统构建的方式来分析整个软件系统。
三、在MSVC中使用klocwork
因为MS系列编译器是klocwork默认支持的编译器,所以不用编辑修改编译器配置文件。
MSVC6.0
安装klocwork之后,用户可以“工具”菜单的“定制”窗口打开MSVC6.0与klocwork的集成插件。如下图:
打开已有的工程,选中一个项目,点击klocwork工具栏中的“Check Active Project”,对工程中的文件进行分析。
从调试窗口中找到Macro窗口,如下图,可以得到分析结果,还能够了解klocwork进行代码分析时的过程。分析得到的issues报告可以链接到代码行中。
点击klocwork工具栏中的“show issues filter window”查看报告。
该窗口可以根据用户需要显示每条issues的详细内容,以及问题报告。
选择Filter按钮,用户可以通过Filter窗口选择issues集的状态,按照严重程度选择issues集合。
选择Change status按钮,用户可以根据当前代码问题修改状态通过Change status窗口选择被选issues的状态(分析、修复、忽略、不是一个问题等)。
要查看更详细的报告需要通过Klocwork Re