Linux-Splint-使用简介PPT课件_第1页
Linux-Splint-使用简介PPT课件_第2页
Linux-Splint-使用简介PPT课件_第3页
Linux-Splint-使用简介PPT课件_第4页
Linux-Splint-使用简介PPT课件_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1,Linux Splint 使用简介,GDLC 2012.02.09,2,安装,Download 到splint的官方网站下载最新的源代码, 解压缩源代码. #tar xzf splint-xxx-tar.gz Build & Install 去到解压缩后的源代码目录中,执行 #./configure -prefix=/usr/local/splint #make #make install Modify env # vi /.bashrc 添加: export LARCH_PATH=/usr/local/splint/share/splint/libexport LCLIMPORTDIR=

2、/usr/local/splint/share/splint/import,3,检测范围,4,null dereferences 例子,5,undefined values 例子,6,Type类型检查例子,7,memory management 例子,8,memory management 例子,9,memory boundary 例子,10,splint 批注相关功能 More powerful checks are made possible by additional information given in source code annotations. Annotations ar

3、e stylized comments that document assumptions about functions, variables, parameters and types. In addition to the checks specifically enabled by annotations, many of the traditional lint checks are improved by exploiting this additional information. 通过批注可以模拟C+的某些访问特性控制,也能加强对程序执行路径的管理。 目前不建议在我们工程中应用

4、,因为需要修改源代码,11,splint 的LCL规范 splint程序依据LCL语言写的规范模板,去解释分析C语言程序。 splint安装后,就默认有很多的LCL模板,多数的检查都使用默认的模板,没有定制添加新的模板,12,splint 使用 #splint -I$header_path +trytorecover -D_signed_=char -mustdefine -unrecog -paramuse +gnu-extensions +posixlib +never-include -nullpass -I 包含目录 -D定义一些系统不认得的关键字 以下flag如果被使用,前面的+表示检查,-表示不检查。 mustdefined使用前必须定义 unrecog 不认得的标识符 paramuse 定义了变量需要使用 gnu-extenti

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论