source insight4.0集成静态代码检测工具PC lint

1、下载软件

http://www.32r.com/soft/17274.html(选择普通下载通道下载,这个还是比较不错的,不会下载垃圾东西)

2、安装(英文目录)

解压压缩包,点击pclint9setup.exe安装即可,建议安装到默认的路径下边

3、开始集成到source insight4.0

3.1、source insight4.0添加命令已经放到了Tool->Custom Commands

3.2、点击add按钮,然后输入命令的标签名字,如:PC Lint,然后点击OK,在Command栏就能看到PC Lint命令了。

3.3、点击一下Command栏PC Lint,开始编辑,如下图

 Run输入栏:是点击Run或者是使用热键时执行的命令,

参数:"C:\lint\lint-nt.exe" 表示可执行文件lint-nt.exe的绝对路径

参数:-u -ic:\lint std src 【ic:\lint表示后面带的参数 std src配置文件所在的目录路径】 【std src 是两个配置文件,分别是存放在C:\lint下边的std.Int和src.Int,这里可以省略.Int

填完以后直接点击右侧栏目中的Close关闭即可。

4、将命令放到菜单栏和添加热键

4.1、点击菜单栏中的Options->Menu Assignments,输入PC即可找到刚刚添加的命令,然后点击Menu的下拉框,选择你希望将这个命令存放到哪个菜单栏下边,然后点击Insert安装。

 4.2、添加热键可直接点击上图的4->Key sAssignments进入设置页面,也可以通过Options->Key Assignments进入,然后点击Assign New Key按钮添加热键,我使用Ctrl+Shift+R,每按一次手抽筋一次,顺便配一个华丽的微转身,如图。

点击Ok即完成配置。

5、都使用source insight了,想必也不是一两个文件倒腾的活,接下来如何开始静态检测。

5.1、根据附件压缩包解压到PC Lint安装的文件夹下边,总共有9个文件(选择性查看src.lnt、include.lnt和options.lnt即可)

std.lnt:上面启动启动命令中的std对应的就是这个文件,这个文件应该是做一些编译器配置的初始化

src.lnt:上面启动命令中的src对应的文件,这个文件存放的是我们需要静态检测的源码的绝对路径,可以使用这个命令在Windows下的dos下把路径全部打印出来:dir /s /b  *.c *.h,然后拷贝进去即可。

options.lnt:一些选项的配置文件,这个嵌套在std.lnt,主要放一些-D的宏定义选项配置,例如大端-D_HOST_IS_BIG_ENDIAN_=1,可以去Makefile中找对应-D的加进来即可。

include.lnt:头文件的路径需要添加到这里面,否则会报错打不开头文件

  a、显示头文件包含的绝对路径可以使用dir /s /b /ad | find /V ".svn"命令将当前目录下的文件的目录和子目录的绝对路径打印出来。然后find /V过滤掉包含.svn的路径

  b、在后面加重定向符号重定向到一个文件include.Inc,然后可以在linux下通过awk在行前添加-I“,在行尾添加”,

  c、可用的命令awk '{print "-I\""$0}' include.Inc > include.In  为文件每行行首添加 -I“    和   awk '{print $0"\""}'  include.In >  include.Inc 为每行行尾添加”

  d、有个重要的点,在编译时会报错缺少库头文件,可以将libc(可以使用内核编译生成的)的库放到当前目录C:\lint\下,在include.Int中添加libc子目录的路径,文件中有举例,路径一定要对哦。

co-gcc.lnt:见名思意,配置gcc编译器的文件

co-gcc.h:

au-sm123.lnt:

au-ds.lnt:

lint_cmac.h:

6、万事具备,只欠 Ctrl+Shift+R 手抽筋操作,一按就开始运行了(记得看电脑下方任务栏弹出的dos窗口有没有报错),如果发现还有错,那就排错吧,找到头文件目录拷贝到include.Int等。

7、或许,您可能还会报一个错,那就是缺少sihook4.exe,这个好办,去source insight官网下一个软件,安装一下,然后把sihook4.exe拷贝出来放到对应的目录下即可,也可以使用附件中的sihook4.rar解压。

 

posted @ 2020-06-10 00:27  lxping0826  阅读(2257)  评论(1编辑  收藏  举报