Windows下pc-lint下载安装以及搭建环境检查Linux下开发的工程代码

一、下载安装pc-lint:

链接:https://pan.baidu.com/s/108GMBbBuAyoK60acN4oEdQ
提取码:lyqy
1、下载PC-lint.9.0e.rar并解压:在这里插入图片描述
2、双击pclint9setup.exe 进行安装,此处安装目录为默认C:\lint:
在这里插入图片描述
3、安装之后勾选:I want to run the configration program now ,点击下一步,进入自动配置界面:
在这里插入图片描述
4.欢迎界面,提示版权信息,点击“下一步”:
在这里插入图片描述
5.显示PC-lint命令行使用说明,点击“下一步”:
在这里插入图片描述
6.选择“创建一个新的STD.LNT”配置文件,这里使用默认路径,点击“下一步”,出现警告,选择“是”:
在这里插入图片描述
7.选择编译器,这里选择“GNU C/C++(co-msc90.Int)”,点击下一步:
在这里插入图片描述
8.选择内存模式。可以根据自己程序区和数据区的实际大小选择一个合适的内存模式,这里选择“32-bit Fat Model(-ms, -si4, -sp4)”,点击“下一步”:
在这里插入图片描述
9.选择所要的支持库的配置信息,选择我们常用的
Active Template Library(ATL),
Microsoft Foundation Class Library(MFC),
Standard Template Library(STL),
Windows 32-bit,
Windows NT
点击“下一步”:
在这里插入图片描述
10.选择是否支持为使用C/C++编程提出过重要建议的作者的一些关于编程的个人意见。根据自己喜好选择,这里左边选择第3个【Scott Meyers(Effective C++ More Effective C++ and Effective C++ 3rd Edition)】,右边选择第1个【Dan Saks】和第3个【MISRA 2004】。点击“下一步”:
在这里插入图片描述
11.选择如何包含头文件。这里先选择Skip this step,选择下一步:
在这里插入图片描述
12.提示lnt文件已经被创建过了,点击“确定”:
在这里插入图片描述
13.提示是否创建新的配置文件,选择“否”:
在这里插入图片描述
14.选择生成一个控制全局编译信息显示情况的选项文件,选“No”来生成该文件。点击“下一步”,点击“确定”:
在这里插入图片描述
15.选择所支持的集成开发环境,任意选择,这里选择“(env-si.Int)Source Dynamic’s Source Insight”。点击“下一步”:
在这里插入图片描述
16.选择把LIN.BAT拷贝到任何一个Path目录下,这里选择“Prepend my PC-lint directory to my PATH(create LSET.BAT)”:
在这里插入图片描述
17.提示lset.bat和lin.bat已经被创建,点击“确定”。完成安装配置。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这时候C:\lint下std.lnt文件并没有包含编译所需要的头文件,我们检查的是linux下开发的工程代码,因此最好配置linux下的头文件,linux下的系统头文件都在/usr目录下,我们需要将/usr目录下的头文件拷贝到windows下,这时候拷贝是会提示我们类似如下的错误“
cp: 无法创建符号链接’/mnt/hgfs/share/linux-4.20.13/Documentation/Changes’: 不支持的操作”,这是因为我们的windows系统上不支持linux的符号链接,所以就会报错。这时候最好的办法就是将/usr目录做磁盘映射到windows下,第二步介绍具体步骤。

二、linux安装samba,做磁盘映射将/usr目录映射到Windows下:

1、Ubuntu下安装samba程序,执行如下命令即可:

apt-get install samba
apt-get install smbclient

安装完成后执行

samba -V

如果可以看到版本号即为安装成功:
在这里插入图片描述
2、配置samba服务器,使用如下命令打开samba的配置文件:

vi /etc/samba/smb.conf 

加入配置信息:

[share]
   comment = share folder
   browseable = yes
   path = /
   create mask = 0777
   directory mask = 0777
   valid users = kwt
   force user = nobody
   force group = nogroup
   public = yes
   available = yes

这其中比较重要的参数为path和valid users, path指定了samba服务器的根目录,可以任意指定合法路径; valid users表示可以访问samba服务器的合法用户;用户在配置时注意需要将路径改为自己需要的路径,切勿全盘照抄。
3、接下来需要为samba服务器添加用户了,由于我的配置中使用的是名为"kwt"的用户(该用户其实就是我的登录用户),所以我需要通过如下命令来为samba添加此用户并设置密码:

smbpasswd -a kwt

4、配置完成后需要重启samba服务器,使用如下命令重启samba服务器:

/etc/init.d/samba restart

5、接下来就可以在windows上访问samba服务器了,通过如下的方式访问:
\+ ip
在linux中可以通过命令 ifconfig查看ip地址,输入地址后,我们应该就可以看到share文件夹,点击登录我们刚刚创建的账户和密码进去就是我们虚拟机中的/usr/目录了。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
6、为了更方便地使用,我们可以将samba服务器映射到磁盘,按照如下的步骤即可将samba服务器映射到磁盘:
(1)、打开计算机界面,点击映射网络驱动选项:
在这里插入图片描述
(2).在文件夹选项中输入对应的路径:
在这里插入图片描述
(3).点击确定,即可在计算机界面看见映射成功的磁盘了:
在这里插入图片描述
在完成了以上操作之后,我们就可以在第一步在C:\lint目录下创建的std.lnt中配置编译所需的头文件了,具体如下。

三、配置编译所需头文件:

1、打开Linux终端输入如下命令查询/usr目录所有的/include文件夹:

find /usr -name include

在这里插入图片描述
2、复制所有路径,粘贴到std.lnt并在所有路径前面添加-iZ:并修改成如下(注意\和/的修改):
在这里插入图片描述
至此我们环境以及打好了,可以检查linux下开发的工程代码,注意在检查代码前先要将工程代码的所有头文件和c文件的绝对路径另存一个.lnt文件,放到C:\lint目录下,然后在std.lnt中加入新建的.lnt文件,在windows终端执行如下代码,讲讲查结果保存到log.txt即可:

C:\lint\lint-nt.exe -iC:\lint std.lnt > C:\lint\log.txt
PC-Lint是一个历史悠久、功能强大的C/C++静态代码检测工具,其使用历史可以追溯到计算机编程的远古时代(30多年前)。经过多年的发展,它不仅可以检查出一般的语法错误,还可以检查出那些虽然符合语法要求但不易发现的潜在错误,还能够有效地帮助开发人员提出许多程序在空间利用、运行效率上的改进点,从而提高软件的质量。 PC-Lint是GIMPEL SOFTWARE公司的产品,许多国外的大型专业软件公司,如微软公司,都把它作为程序检查工具,在程序合入正试版本或交付测试之前一定要保证通过了LINT检查。要求软件工程师在使用LINT时要打开所有的编译开关,如果一定要关闭某些开关,那么要给出关闭这些开关的正当理由。 PC-Lint能够将C/C++程序中的遁词、特性、问题和缺陷等找出来。这种分析的目的是为了在程序整合或移植前确定程序中潜在的问题,找出可能是敏感源未被发现的错误的特殊结构。PC-Lint能够在多个模块中查找,因此比编译器更能发现问题。 可以把PC-Lint看作是一种更加严格的编译器。但它仅使用程序源代码和头文件工作,不需要编译器的参与。本质上PC-Lint是进行严格的词法语法和语义分析工作。能否通过PC-Lint的检测将成为程序开发人员的严峻挑战。当然,有些没有通过PC-Lint的程序照样能够运行,通过了也不能保证没有问题,但是PC-Lint代表了一致性和可移植性以及良好的风格是无可厚非的。 可想而知,如果从编码后第一次编译程序时就使用LINT检查程序,并且保证消除所有的LINT告警,那么软件编码结束后整个工程再编译时就不会遇到很多的告警信息。即使整个工程在编译时,如果能抽出一定的精力来消除程序中的LINT告警,以后再维持这种无告警状态就很容易了。程序质量的提高也是不言而喻的。 PC-LINT的内容非常广泛,光是选项就有300多个,涉及到程序编译及语法使用中的方方面面。它的全称是PC-Lint/FlexeLint for C/C++。PC-Lint能够在Windows、MS-DOS和OS/2平台上使用,以二进制可执行文件的形式发布,而FlexeLint 运行于Linux/Unix平台,以源代码的形式发布。 PC-Lint包中包含3个可执行文件:一个Windows可执行文件(在Windows下运行的32位控制台程序)、一个DOS扩展的可执行文件(在MS-DOS下运行,利用80386 DOS扩展技术来访问所有可利用的扩展内存)和一个OS/2 32位的可执行文件(只在OS/2下运行)。 使用PC-Lint代码走读和单元测试之前进行检查,可以提前发现程序隐藏错误,提高代码质量,节省测试时间,并提供编码规则检查,规范软件人员的编码行为。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值