在某linux机器的/share2/coverity/ 目录下安装使用coverity说明

从官网下载安装文件:cov-analysis-linux64-2019.06.sh 放置于/share2/coverity/ 目录下

我是由于机器安装软件太多,所以选择/share2/coverity/ 目录下安装的,一般情况建议目录/home/coverity。

参考资料:

Coverity 8.7.1 命令与 Ant 任务说明书: https://download.csdn.net/download/qq_33163046/12116661

安装前还需要:

服务端账号/密码: usr/password

license.config文件

rule.txt

1. 安装步骤

root用户进入根目录

# cd /share2/coverity

添加执行权限

# chmod +x cov-analysis-linux64-2019.06.sh

运行安装包

# ./cov-analysis-linux64-2019.06.sh

确认安装

#o

选择语言为中文

#4

不停按回车阅读许可条款

选择接受许可条款

#1

配置安装目录

Where should Coverity Analysis be installed?

#/share2/coverity/cov-analysis

Which components should be installed?

1: Coverity Static Analysis and Dynamic Analysis. [*1]

2: Extend SDK

3: Architecture Analysis

(To show the description of a component, please enter one of *1)

Please enter a comma-separated list of the selected values or [Enter] for the default selection:

[1]

这里选择默认值,直接回车即可

#enter

Are you using a Coverity license or FLEXnet?

Please choose the type of license you have. The license is Coverity type, a

file with a name ending in .dat; or FLEXnet type.

If you plan to use FLEXnet licensing and Dynamic Analysis, choose Both.

License types to install

Coverity (you have a .dat file) [1, Enter], FLEXnet (you have a .lic file) [2], Both [3]

这里选择2并回车,采用浮动license文件配置

#2

Choose the way you want to set up your license.config file.

We're ready to set up your license.config file, which tells Coverity

applications where your FLEXnet license server is. If you will use a single

license server, choose Basic. If your license servers are a redundant

"triad", choose Advanced. If you already have a license.config file that you

want to use, choose that option.

License server configuration

Basic [1, Enter], Advanced [2], Use an existing license.config file [3]

这里选择1并回车,浮动license文件配置为基本模式

#1

Enter the host name and port of your FLEXnet server

License server host name

[localhost]

这里选择默认值,直接回车即可

#enter

License server port

[27000]

这里选择默认值,直接回车即可

#enter

Extracting files ...

Setup has finished installing Coverity Analysis on your computer.

Start the Coverity Wizard?

Yes [y, Enter], No [n]

这里选择n并回车,不启动Coverity Wizard

#n

Finishing installation ...

2.license.config文件更新

安装完成后将license.config文件复制到安装目录下的bin目录下,覆盖。

/share2/coverity/cov-analysis-linux64-2019.06/bin/

3.配置环境变量

环境变量PATH中增加  /share2/coverity/cov-analysis/bin ,并检查是否添加成功

在.bash_profile中添写蓝色路径:

PATH=$PATH:$HOME/bin:/share2/coverity/cov-analysis/bin:/usr/sbin:/sbin:/usr/local/bin;export PATH

4.配置编译器,执行(Coverity 8.7.1 命令与Ant 任务说明书page 72):

# cov-configure --gcc

# cov-configure --comptype gcc --compiler cc --template

提示:[WARNING] Template config template-ld-config-0 already exists for ld and will be reused.

-- 平台编译一般使用cc命令(虽然实际cc通过文件链接指向gcc),因此还需要执行该命令

上述命令只需执行一次。

5.创建可以正常编译的代码环境

将/share2/coverity目录下放一个完整的接口机可编译环境。(我的cov-analysis 和lib,bin同一目录层级)在.bash_profile里的第一次使用${HOME}前,加上HOME=/share2/coverity, 更改编译的主目录,变量生效后执行.sentenv_64.sh, 到代码目录执行该代码的编译命令 ,确认可以正常编译。(如果你是/home/cvoerity目录就比我简单多了。)

6.构建

确认可以正常编译后,在该目录执行(Coverity 8.7.1 命令与Ant 任务说明书page 39)

# cov-build --dir cov make Clean Install

make Clean Install是我代码的makefile里的编译命令。执行成功标志

7 C/C++ compilation units (100%) are ready for analysis

The cov-build utility completed successfully.

7.执行

取扫描规则rule.txt 放于编译命令执行上一个目录层。然后执行(Coverity 8.7.1 命令与Ant 任务说明书page 2)

#cov-analyze --dir cov @@../rule.txt

执行成功标志的最后几行为:

[STATUS] Running analysis

|0----------25-----------50----------75---------100|

****************************************************

[STATUS] Exporting summaries

|0----------25-----------50----------75---------100|

****************************************************

Analysis summary report:

------------------------

Files analyzed                 : 8

Total LoC input to cov-analyze : 45532

Functions analyzed             : 241

Paths analyzed                 : 94669

Time taken by analysis         : 00:02:41

Defect occurrences found       : 242 Total

19 AUDIT.SPECULATIVE_EXECUTION_DATA_LEAK

1 CHECKED_RETURN

171 DC.STRING_BUFFER

1 DEADCODE

1 MISSING_BREAK

35 OVERRUN

1 PW.PARAMETER_HIDDEN

1 SIZEOF_MISMATCH

9 STACK_USE

2 UNREACHABLE

1 UNUSED_VALUE

在rule.txt里,规则如下:

--all

--rule

--enable-constraint-fpp

--enable-callgraph-metrics

--enable-fnptr

--enable-virtual

--enable

USER_POINTER

--enable

DC.STRING_BUFFER

--enable

ENUM_AS_BOOLEAN

--enable

UNENCRYPTED_SENSITIVE_DATA

--enable

WEAK_GUARD

--enable

WEAK_PASSWORD_HASH

--enable

HARDCODED_CREDENTIALS

--enable

AUDIT.SPECULATIVE_EXECUTION_DATA_LEAK

--enable

INTEGER_OVERFLOW

--enable

MIXED_ENUMS

--enable

RISKY_CRYPTO

--enable

COM.ADDROF_LEAK

--enable

COM.BSTR.ALLOC

--enable

COM.BSTR.BAD_COMPARE

--enable

COM.BSTR.NE_NON_BSTR

--enable

FLOATING_POINT_EQUALITY

--enable

VCALL_IN_CTOR_DTOR

8.上传到服务端页面上

执行命令(Coverity 8.7.1 命令与Ant 任务说明书page 2)

#cov-commit-defects --dir cov --host 127.0.0.1 --user XiaoXiangzai --password project-cov_0001 --stream STRAM-NAME

coverity分析端软件环境搭建相关推荐

  1. 【蓝桥杯嵌入式主板(G4)】第一章 软件环境搭建

    在比赛的考场上,自己的电脑是已经安装好了环境的,但是在比赛之前,同学们自己备赛的时候,肯定会用到一些软件,现在,公子带大家安装软件环境. 第一节    安装jre 1,双击jre. 2,点击" ...

  2. 高通平台上的AMSS(Modem端) windows环境搭建

    高通平台上的AMSS(Modeom端)Windows环境搭建 一.首先简单介绍一下,高通平台7&8系列平台的软硬件架构. 如图: 硬件上采用的是ARM9+ARM11(最新的采用Cotex-A8 ...

  3. PHP从入门到放弃之(一)PHP介绍PHP学习路线图PHP开发软件环境搭建

    一.什么是PHP? PHP(外文名:PHP: Hypertext Preprocessor,中文名:"超文本预处理器")是一种通用开源脚本语言.语法吸收了C语言.Java和Perl ...

  4. 蓝桥杯15单片机软件环境搭建

    嘿嘿,我来教教大家如何搭建蓝桥杯单片机比赛的软件环境 首先我们先掏出一手官网,大家有什么问题可以多去官网看看 Keil官网:www.keil.com STC官网:www.stcmcudata.com ...

  5. vue开发移动端h5环境搭建

    技术选型 公司现在需要开发移动端的h5,使用现在比较流行的vue 2.0开发,使用的脚手架是Vant2,网络访问使用的是axios,路由跳转使用的是vue-router,开发工具是vscode,作为一 ...

  6. 搭建:直播软件环境搭建(FFmpeg+nginx+rtmp+vlc)

    一.目的:通过搭建直播软件环境来了解直播软件的原理 二.环境: 1.Win10 2.nginx - (rtmp服务器) 3.OBS Studio或FFmpeg.exe - (用于推流) 4.VLC m ...

  7. 【蓝桥杯物联网】第二章 软件环境搭建

    在比赛的考场上,自己的电脑是已经安装好了环境的,但是在比赛之前,同学们自己备赛的时候,肯定会用到一些软件,现在,公子带大家安装软件环境. 第一节    安装jre 1,双击jre. 2,点击" ...

  8. 数据库中间件MyCAT源码分析:调试环境搭建

    ???关注微信公众号:[芋艿的后端小屋]有福利: RocketMQ / MyCAT / Sharding-JDBC 所有源码分析文章列表 RocketMQ / MyCAT / Sharding-JDB ...

  9. 小明分享|基于VSCode Espress IDF软件环境搭建

    VS code下载网址: --现版本安装包大小大约60M左右,是一个轻量级但功能强大的源代码编辑器,适用于Windows.macOS和Linux.支持安装扩展各类应用插件. https://code. ...

  10. R 语言怎么保存工作目录到当前路径_【R语言基础】01.R语言软件环境搭建及常用操作...

    一.R语言简介 R语言是专业的统计分析软件,来自著名数据科学网站(http://www.kdnuggets.com/)发起的一个2019年统计分析和数据挖掘软件使用情况的调查结果: 表明R语言是该领域 ...

最新文章

  1. IOS面试经常被问到的问题
  2. 用计算机计算线性卷积的基本规则,实验三_线性卷积与圆周卷积的计算.doc
  3. POJ2299 树状数组求逆序对
  4. [XSY] 计数(DP,NTT,分治)
  5. LeetCode141-环形链表(Linked List Cycle)-Rust语言实现
  6. 什么是spooling技术 他有哪几部分组成_气调保鲜冷库有哪几部分组成?
  7. 前端- 不用React 而使用 Vue,这么做对吗?
  8. 堆排序 Java实现
  9. msfvenom 生成php木马,利用msfvenom生成木马程序
  10. 值得思考:过去的中国大学
  11. 思辨与创新 第二章 展开论证:如何让自己的想法被证明?
  12. 【华为OD机试真题 JS】叠积木
  13. 微信与qq怎么连接到服务器,王者荣耀微信和qq可以一起玩吗 王者荣耀微信和qq互通吗说明...
  14. 如何在PowerPoint演示文稿中链接或嵌入Excel工作表
  15. 年薪40W+,2018年程序员如何跳出35岁“失业”怪圈?
  16. 微信二级不死域名是什么意思?被封后还能访问吗?
  17. python绘制直方图的函数_(六)pyplot基础图表函数(学习笔记)|python数据分析与展示...
  18. SSH2远程连接例子
  19. 【自己写全景】TreeJs实现全景图
  20. C语言指针双星,双星引力模拟不知道什么问题……

热门文章

  1. c语言需要什么硬件基础知识,学习c语言需要什么 基础c语言需要这些知识
  2. windows开启ftp服务及FTP命令使用
  3. 软件架构-事件驱动架构
  4. 基于Linux系统PXE启动DOS工具
  5. 【转载】Oracle关于expdp、impdp以及rman介绍
  6. 【rmzt:进击的巨人炫彩主题】
  7. WinFR 界面版 - 免费好用的数据恢复软件,误删文件轻松找回
  8. Nessus最新版8.15安装教程
  9. CEikEdwin 助手
  10. android 换机 备份,Android QQ同步助手3.7:资料备份让换机刷机无忧