Интегрируйте серверные продукты Polyspace с MATLAB и Simulink

Можно установить Polyspace® Bug Finder™ Server™ и Сервер Polyspace Code Prover™ как отдельные продукты и анализировать код C/C++. Однако, если у вас есть установка MATLAB®, можно запустить анализ Polyspace со скриптами MATLAB.

Если вы устанавливаете серверные продукты Polyspace и MATLAB, необходимо запустить установщика MATLAB дважды и Polyspace установки в различной корневой папке от других продуктов. Например, в Windows®:

  • Вашей корневой папкой MATLAB по умолчанию является C:\Program Files\MATLAB\R2019a.

  • Вашей корневой папкой Polyspace по умолчанию является C:\Program Files\Polyspace Server\R2019a для серверных продуктов Polyspace.

Чтобы запустить Polyspace из MATLAB, Simulink® или MATLAB Coder™, необходимо выполнить шаг постустановки, чтобы соединить MATLAB и установки Polyspace.

Интегрируйте Polyspace с установкой MATLAB от того же релиза

Если ваш Polyspace и установки MATLAB принадлежат тому же релизу, можно использовать все функции MATLAB и классы, доступные для рабочего Polyspace.

Соединить ваш MATLAB и установки Polyspace:

  1. Откройте MATLAB с правами администратора.

  2. В командной строке MATLAB введите:

    polyspacesetup('install', 'polyspaceFolder', FOLDER);
    FOLDER путь к папке, где вы установили Polyspace. Папкой по умолчанию является C:\Program Files\Polyspace\R2020b. Вы видите, что подсказка утверждает, что рабочая область будет очищена и все открытые закрытые модели. Нажмите Yes, чтобы продолжить соединение. Процесс может занять несколько минут, чтобы завершиться. Избегать подсказки во время установки, введите:
    polyspacesetup('install', 'polyspaceFolder', FOLDER, 'silent', true);

  3. Перезапустите MATLAB. Можно теперь использовать все функции и классы, доступные для рабочих серверных продуктов Polyspace.

Установка MATLAB может быть соединена только с одной установкой Polyspace. Чтобы соединиться с новой установкой Polyspace, любые предыдущие ссылки должны быть удалены. Чтобы удалить ссылку между Polyspace и установкой MATLAB, повторите те же шаги как прежде с одним различием: В командной строке MATLAB введите:

polyspacesetup('uninstall')

Интегрируйте Polyspace с установкой MATLAB от различного релиза

Если вы обновляете свою установку серверного продукта Polyspace, но не свою установку MATLAB, можно соединить установку MATLAB с более поздним релизом серверного продукта Polyspace.

Удалите существующую ссылку между своим Polyspace и установкой MATLAB как описано в предыдущем разделе. Затем на вашем шаге постустановки перейдите к polyspaceserverroot\toolbox\polyspace\pscore\pscore\, где polyspaceroot папка установки для более позднего релиза Polyspace Bug Finder Server и/или Polyspace Code Prover Server. В командной строке MATLAB введите:

polyspacesetup('install')

Избегать подсказок во время установки, введите:

polyspacesetup('install', 'silent', true)

Если вы интегрируете MATLAB с более поздним релизом Polyspace, вы не можете использовать все функции и классы, доступные, чтобы запустить анализ. В частности, вы не можете использовать polyspace.Project класс. Вместо этого используйте polyspaceCodeProverServer функционируйте, чтобы запустить Программу автоматического доказательства Кода и polyspaceBugFinderServer функционируйте, чтобы запустить Средство поиска Ошибки на рукописном коде.

Проверяйте интегрирование между MATLAB и Polyspace

Чтобы проверять, соединяется ли установка MATLAB уже с установкой Polyspace, открытым MATLAB и входит:

ver
Вы видите список установленных продуктов. Если Polyspace соединяется с MATLAB (после R2019a) или в той же папке установки как MATLAB (до R2019a), вы видите Продукты polyspace в списке.

Интегрирование Polyspace MATLAB добавляет некоторые подпапки установки Polyspace в путь поиска файлов MATLAB. Видеть, какие пути были добавлены, введите:

polyspacesetup('showpolyspacefolders')

Запустите серверные продукты Polyspace со Скриптами MATLAB

В непрерывном процессе интеграции можно выполнить скрипты MATLAB, которые запускают анализ Polyspace новых представлений кода, и сравнивает результаты с предопределенными критериями. Используйте эти функции/классы:

  • Создайте polyspace.Project объект сконфигурировать аналитические опции Polyspace, запустите анализ и считайте результаты в таблицы MATLAB. Можно использовать другие функции MATLAB для сравнения результатов против предопределенных критериев.

    Чтобы только считать существующие результаты, не запуская анализ, используйте polyspace.BugFinderResults (Polyspace Bug Finder) или polyspace.CodeProverResults (Polyspace Code Prover Server) класс с путем к папке результатов.

  • Если вы хотите более гранулированный выбор средств проверки для:

    Чтобы создать пользовательскую цель для анализа и явным образом задать размеры типов данных, создайте polyspace.GenericTargetOptions объект.

Можно также использовать polyspaceBugFinderServer или polyspaceCodeProverServer (Polyspace Code Prover Server) функция, чтобы запустить анализ и затем считать результаты с polyspace.BugFinderResults (Polyspace Bug Finder) или polyspace.CodeProverResults (Polyspace Code Prover Server) класс. Если вы используете команды сборки, чтобы создать ваш исходный код, можно создать настройку Polyspace из команды сборки с помощью polyspaceConfigure функция.