VC6 配置Pclint:
1. 配置 Pclint,for VC6:
(1). 将lint.rar解压至 C 盘根目录, C:\lint 即为 Pclint 的安装目录
(2).将 C:\lint\lnt 下的3个文件 lib-w32.lnt,env-vc6.lnt,co-msc60.lnt 拷贝至 c:\lint 下, 再在安装目录下创建 std.lnt 和 options.lnt 两个 文件,其中 std.ln t的内容如下
// contents of std.lnt
C:\lint\co-msc60.lnt
C:\lint\lib-w32.lnt
C:\lint\options.lnt -si4 -sp4
-i"C:\Program Files;C:\Program Files\Microsoft Visual Studio\VC98\Include"
其中,std.lnt 可以使用 configure.exe 生成; -i表示头文件路径,如上是 vc 头文件路径;可以根据需要自己手动修改;
2. 对单个文件进行 Pclint 检查:
VC6: Tools-->Custome--> Tools 新建命令
curentfile lint
Command: C:\lint\LINT-NT.EXE
Arguments: -u -i"C:\Lint" std.lnt env-vc6.lnt "$(FileName)$(FileExt)"
Inital directory: $(FileDir)
选中 Use Outpur Window
这样,打开单个文件,选择 Tools 下面的 currentfile lint 即可对单个文件进行检查;
-i"C:\Lint" 表示在 C:\lint 目录下搜索 lnt 文件,-u 表示只对本单元进行检查
3. 导出整个工程的 lnt 文件:
export Project lnt
Command: C:\lint\LINT-NT.EXE
Arguments: +linebuf $(TargetName).dsp>$(TargetName).lnt
Inital directory: $(TargetDir)\..
选中 Use Outpur Window参数+linebuf表示加倍行缓冲的大小,最初是600 bytes,行缓冲用于存放当前行和你读到的最长行的信息。
该命令会根据 VC 工程,生成以工程名命名的 XXX.lnt 文件,文件中列出了该工程的 .c .cpp 文件;
4. 对整个工程进行 pclint 检查
workspace lnt
Command: C:\lint\LINT-NT.EXE
Arguments: +ffn -i"C:\Lint" -u std_g.lnt env-vc6.lnt $(TargetName).lnt > $(TargetName).chk
Inital directory: $(WkspDir)
选中 Use Outpur Window这个命令的结果就是将整个工程的检查结果输出到与工程同名的.chk文件中。参数中+ffn表示Full File Names,可被用于控制 是否使用的完整路径名称表示。
注:先执行 export Project lnt 命令,生成工程文件源文件列表,再使用 workspace lnt 命令对整个工程的源文件进行 pclint 检查;
实际中,如果工程使用的头文件较多,可以单独建立一个文件用于包含头文件;
5. 对目录下所有源文件进行 Pclint 检查:
Allfile lint
Command: C:\lint\LINT-NT.EXE
Arguments: -u -i"C:\Lint" std.lnt env-vc6.lnt *.c
Inital directory: $(FileDir)
选中 Use Outpur Window
或者使用 $(FileDir)\*.c $(FileDir)\*.cpp 来代替 *.c
若想要检查包含子目录的源文件,则可以建立一个 fileList.lnt 文件,将所有目录的源文件都添加进去
对所有文件进行检查不使用 -u 选项
fileList.lnt 格式如下:
Moudle1-dir\*.c
Moudle2-dir\*.c
.....
然后 lint-nt.exe -iC:\lint std.lnt fileList.lnt 进行检查;
如果想对 cpp 文件和 c 一起进行检查: +cpp(cc) a1.cc a2.cc a3.c a4.cpp, +cpp(extension) 会将 cc, cpp 文件当做 cpp进行检查,.c 当做 c 文件进行检查;