问题验证AUTOSAR软件组件通过使用Polyspace代码验证,从Rte_Type变量定义不考虑。h头文件,即使它包含在源文件中。

4视图(30天)
我验证Autosar swc利用Polyspace代码验证,在一个源文件包含在“Rte_Type。h的定义中定义的所有变量和结构的Rte_Type。h '但在创建项目时我得到编译错误标识符”Varianle_name的定义我在日志文件中看到的,甚至包括文件夹“Rte_Type。h的文件。很多次我得到这个错误不同的软件组件,我认为这是一个错误出现在polyspace代码验证。请尽快解决这个问题。
2的评论
纳兰德拉Venkata
纳兰德拉Venkata 2020年6月14日
嗨Anirban,
谢谢你的评论这个问题。
我创建项目,通过项目配置选项为“ 创建AUTOSAR标准的
和我用一个文件夹包含. c和. h文件和我提供这个文件夹作为源和包括文件夹中创建一个项目连同ARXML文件。

登录置评。

答案(1)

Anirban
Anirban 2020年6月12日
编辑:Anirban 2020年6月12日
嗨Venkata,
我可以给部分回答你的问题。
有一个常见的用户认为如果一个头文件中指定源文件,Polyspace分析应该知道它的内容。有些这样的标准头文件。但即使标准头文件,它可能是更好的如果你指定路径的编译器版本头使用 -我 选项(或添加 标题项目包括文件夹的路径 如果您正在运行分析从UI)。最终原因是编译你的代码与标题和你希望Polyspace分析模拟编译尽可能。另外,有一个命令 polyspace-configure 可以从一个构建命令或makefile中提取头路径没有你必须显式挖起来。
然而,对于标准头,Polyspace知道其内容,你不一定必须指定文件夹路径的头使用分析选项。例如,一个简单的文件 stdio . h 包括将编译好的你无需指定的路径你的编译器版本 stdio . h 。按照同样的道理, Rte_Type.h 是一个标准的页眉, 但是只有在AUTOSAR上下文 。所以:
  • 如果你运行一个常规代码验证分析,说使用polyspace-code-prover,您必须显式地指定的文件夹路径AUTOSAR头。仅仅包括在源文件将不会工作。如果你知道AUTOSAR头文件夹路径,你可以采取这种方法。
  • 如果你运行这个polyspace-autosar命令,AUTOSAR-aware。你不需要显式地指定文件夹路径AUTOSAR头。
希望这个有帮助。
5个评论

登录置评。