没有发出文件警告

问题描述

我有C / C ++应用程序,正在尝试运行cov-build并收到警告“没有文件发出”。当我们在Coverity上进行POC进行静态代码分析时,您能帮我吗?

C:\Users\Master\bamboo-agent-home\xml-data\build-dir\DEC-L11PROJ-JOB1>cov-build --dir cov-int IarBuild.exe MainApplication\EWARM\L11_P4_uC1.ewp -build *

Windows 10 Enterprise 64位(内部版本18362)上的Coverity Build Capture(64位)版本2019.03 内部版本号:2c0f9c8cf4 p-pacific1-push-35439.872

 IAR Command Line Build Utility V8.4.8.6680
 Copyright 2002-2020 IAR Systems AB.

错误总数:0 警告总数:0 [警告]没有发出文件。这可能是由于您的配置有问题 或因为您的build命令实际上没有编译任何文件。 请确保已配置了实际在编译中使用的编译器。 有关更多详细信息,请查看: C:/Users/Master/bamboo-agent-home/xml-data/build-dir/DEC-L11PROJ-JOB1/cov-int/build-log.txt

解决方法

首先,如果您参与了售前概念验证(POC),则应指派一名Coverity销售工程师来协助POC。该人员的角色包括提供与我将在下面提供的内容类似的说明和信息,以及回答诸如您这样的技术问题。某处可能出现了沟通不畅的情况。 与销售工程师联系,因为他们将比我更可靠,更完整地提供帮助。

现在,这是怎么回事? cov-build的主要目的是监视编译器调用的构建过程,找到编译器后,请使用Coverity编译器(称为cov-emit)编译相同的代码。但是,为了识别编译器,cov-build需要知道其命令行名称,它是哪种编译器,其包含文件的存储位置等。这可以通过名为cov-configure的帮助程序工具来完成。必须在cov-build之前运行。如果尚未运行cov-configure,则不会识别任何编译器调用,这对您来说似乎是正确的,如“未发出文件”所示。

Synopsys有一个名为CLI Integration Cheat sheet的页面,其中提供了与IAR一起使用的这些命令:

cov-configure --comptype iar:arm --compiler iccarm --template
cov-build --dir <intermediate directory> "c:\Program Files (x86)\IAR Systems\Embedded Workbench 6.5\common\bin\IarBuild.exe" sample_project.ewp -build Debug -log all

我个人不能担保这些命令(我没有IAR,也不再可以使用Coverity工具;我是前雇员),但需要这样做。同样,您指定的销售工程师应该能够提供帮助。

最后,对于新的Coverity用户,我建议使用cov-wizard工具。 cov-wizard是命令行工具的图形前端,并带有解释概念和过程的帮助文本以及执行它们的便捷界面。 cov-build之后甚至还有几个步骤,cov-wizard将引导您完成所有这些步骤。它的最后一个屏幕确切显示了要编写脚本时使用的命令行。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...