编程接口指南

appcert 结果

appcert 实用程序对应用程序目标文件的分析结果会写入多个文件,这些文件位于 appcert 实用程序的工作目录中,通常为 /tmp。工作目录下的主要子目录是 appcert.pid,其中,pid 是此 appcert 实例的进程 ID。appcert 实用程序的结果会写入以下文件:

Index

包含所检查的二进制对象与特定于此二进制对象的 appcert 输出所在子目录之间的映射。

Report

包含运行 appcert 时使用 stdout 所显示的汇总报告的副本。

Skipped

包含要求 appcert 检查但强制跳过的二进制对象的列表以及跳过每个二进制对象的原因。以下列表中列出了这些原因:

  • 文件不是二进制对象

  • 用户无法读取文件

  • 文件名包含元字符

  • 文件未设置执行位

objects/object_name

appcert 检查的每个对象的 objects 子目录下都有一个单独的子目录。其中每个子目录均包含以下文件:

check.demoted.symbols

包含 appcert 怀疑为降级的 Solaris 符号的列表。

check.dynamic.private

包含与对象直接绑定的专用 Solaris 符号的列表。

check.dynamic.public

包含与对象直接绑定的公共 Solaris 符号的列表。

check.dynamic.unbound

包含运行 ldd -r 时不是由动态链接程序绑定的符号的列表。另外,还包括 ldd 返回的包含 “file not found” 的行。

summary.dynamic

包含 appcert 检查的对象中的打印机格式的动态绑定摘要,其中包括每个 Solaris 库中使用的公共符号和专用符号表。

返回以下四个退出值之一。

0

appcert 未找到二进制不稳定性的潜在原因。

1

appcert 实用程序未成功运行。

2

appcert 检查的某些对象存在潜在的二进制稳定性问题。

3

appcert 实用程序未找到任何要检查的二进制对象。

更正 appcert 报告的问题