Проверьте, поддерживает ли Polyspace скрипты сборки

Проблема

Этот раздел актуален только при создании Polyspace® проект в Windows® из ваших скриптов сборки.

Когда Polyspace проследит ваш скрипт сборки в консольном приложении Windows кроме cmd.exeкоманда завершается неуспешно. Однако команда build сама по себе выполняется до своего завершения.

Например, ваш скрипт сборки выполняется до своего завершения из Cygwin™ интерпретатора. Однако, когда Polyspace отслеживает сборку, скрипт сборки выдает ошибку.

Возможная причина

Когда вы запускаете консольное приложение Windows, переменные окружения заданы соответствующим образом. Альтернативные консольные приложения, такие как интерпретатор Cygwin, могут настраивать ваше окружение по-другому по сравнению с cmd.exe.

Polyspace пытается проследить ваш скрипт сборки с предположением, что скрипт запускается до своего завершения в cmd.exe. Поэтому, даже если ваш скрипт запускается до своего завершения в альтернативном консольном приложении, когда Polyspace отслеживает сборку, скрипт может оказаться неудачным.

Решение

Убедитесь, что ваш скрипт сборки выполняется до своего завершения в cmd.exe интерфейс. Если сборка выполняется успешно, создайте оболочку .bat файл вокруг вашего скрипта и трассируйте этот файл.

Например, прежде чем вы проследите команду сборки, которая выполняется до завершения в интерпретаторе Cygwin, выполните одно из следующих действий:

  • Запустите интерпретатор Cygwin из cmd.exe а затем запустите скрипт сборки. Например, если вы используете скрипт build.sh Чтобы создать код, введите следующую команду в командной строке DOS:

    cmd.exe /C "C:\cygwin64\bin\bash.exe" -c build.sh
  • Найдите полный путь к скрипту сборки и запустите этот скрипт из cmd.exe.

    Например, введите следующую команду в командной строке DOS:

    cmd.exe /C path_to_script
    path_to_script - полный путь к скрипту сборки. Для образца, C:\my_scripts\build.sh.

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

Если шаги завершены успешно, проследите команду build после запуска ее из cmd.exe. Для образца в командной строке выполните следующие действия, чтобы создать файл опций Polyspace.

  1. Введите свои команды сборки в .bat файл.

    rem @echo off
    cmd.exe /C "C:\cygwin64\bin\bash.exe" -c build.sh
    Назовите файл, например launching.bat.

  2. Проследите команды сборки в .bat и создайте файл опций Polyspace.

    "C:\Program Files\MATLAB\R2017b\polyspace\bin\polyspace-configure.exe" -output-options-file myOptions.txt launching.bat

Теперь можно запускать polyspace-bug-finder в файле опций.