主要内容

本页翻译不是最新的。点击此处可查看最新英文版本。

Polyspace Server 产品与 MATLAB 集成

您可以将 Polyspace® Bug Finder™ Server™Polyspace Code Prover™ Server 作为独立产品进行安装并分析 C/C++ 代码。

在安装 Polyspace 服务器端产品和 MATLAB® 时,您无法在安装程序的单次运行中同时安装 MATLAB 和 Polyspace 服务器端产品。首先通过运行 MATLAB 安装程序安装 MATLAB。然后通过单独运行安装程序将 Polyspace 服务器端产品安装在不同的根文件夹中。例如,在 Windows® 中:

  • 您的默认 MATLAB 根文件夹是 C:\Program Files\MATLAB\R2025a

  • 您的默认 Polyspace 根文件夹是针对 Polyspace 服务器端产品的 C:\Program Files\Polyspace Server\R2025a

要使用 MATLAB 脚本自动进行 Polyspace 分析,请通过运行安装后步骤集成 Polyspace 服务器端产品和 MATLAB。

Polyspace Server 产品与 MATLAB 集成

仅当两个安装均来自同一版本时,您才可以将 Polyspace 服务器端产品与 MATLAB 集成。集成后,您可以使用所有可用于运行 Polyspace 的 MATLAB 函数和类。

要链接 MATLAB 和 Polyspace 安装,请执行以下操作:

  1. 使用管理员特权打开 MATLAB。

  2. 在 MATLAB 命令提示符下,输入以下命令:

    polyspacesetup('install');
    默认情况下,Polyspace 安装在 C:\Program Files\Polyspace\R2025a 文件夹中。如果您将 Polyspace 安装在默认文件夹中,该命令会将 Polyspace 与 MATLAB 集成。如果在默认位置未检测到 Polyspace 安装,请在出现提示时提供 Polyspace 安装文件夹的路径。此过程可能需要几分钟的时间才能完成。

    要避免在安装过程中出现提示,请输入:

    polyspacesetup('install', 'polyspaceFolder', Folder, 'silent', true);

  3. 重新启动 MATLAB。您现在可以使用所有可用于运行 Polyspace 服务器端产品的函数和类。

一个 MATLAB 安装仅可与一个 Polyspace 安装集成。要集成到新的 Polyspace 安装,必须删除任何以前的集成。要删除 Polyspace 和 MATLAB 安装之间的集成,请使用管理员特权打开 MATLAB 并在 MATLAB 命令提示符下输入:

polyspacesetup('uninstall')

检查 MATLABPolyspace 之间的集成

要检查 MATLAB 安装是否已与 Polyspace 安装集成,请打开 MATLAB 并在命令提示符下输入:

ver
您会看到已安装的产品列表。如果 Polyspace 已与 MATLAB 集成,您会在列表中看到 Polyspace 产品。

MATLAB-Polyspace 集成会将一些 Polyspace 安装子文件夹添加到 MATLAB 搜索路径中。要查看添加了哪些路径,请输入:

polyspacesetup('showpolyspacefolders')

使用 MATLAB 脚本运行 Polyspace Server 产品

在持续集成过程中,您可以执行 MATLAB 脚本,对新提交的代码运行 Polyspace 分析,并将结果与预定义标准进行比较。使用这些函数/类:

  • 创建一个 polyspace.Project 对象以配置 Polyspace 分析选项,运行分析并将结果读取到 MATLAB 表中。您可以使用其他 MATLAB 函数将结果与预定义标准进行比较。

    要仅读取现有结果而不运行分析,请使用带有结果文件夹路径的 polyspace.BugFinderResults 类。

  • 如果您想为以下内容选择更细粒度的检查项:

    要为分析创建自定义目标并显式指定数据类型的大小,请创建一个 polyspace.GenericTargetOptions 对象。

您还可以使用 polyspaceBugFinderServer 函数运行分析,然后使用 polyspace.BugFinderResults 类读取结果。例如,如果您使用编译命令来编译您的源代码,则可以使用 polyspaceConfigure 函数从编译命令创建一个 Polyspace 配置。

另请参阅