このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
Polyspace でビルド スクリプトがサポートされるかどうかの確認
問題
このトピックは、ビルド スクリプトから Windows® の Polyspace® プロジェクトを作成している場合にのみ関係します。
Polyspace が Windows コンソール アプリケーション (cmd.exe
以外) でビルド スクリプトをトレースすると、コマンドは失敗します。ただし、ビルド コマンド自体の実行は完了します。
たとえば、Cygwin™ シェルではビルド スクリプトの実行が完了するとします。しかし、Polyspace がビルドをトレースすると、ビルド スクリプトでエラーが発生します。
考えられる原因
Windows コンソール アプリケーション起動時には、環境変数は正しく設定されています。cmd.exe
とは異なる環境が、別のコンソール アプリ (Cygwin シェルなど) で設定されることがあります。
Polyspace は、ビルド スクリプトの実行が cmd.exe
で完了していると仮定して、スクリプトをトレースしようとします。したがって、スクリプトの実行が別のコンソール アプリケーションで完了した場合でも、Polyspace でビルドがトレースされると、スクリプトは失敗する可能性があります。
解決法
ビルド スクリプトの実行が cmd.exe
インターフェイスで完了されるようにします。ビルドが正常に実行されたら、そのスクリプトを囲むラッパーとなる .bat
ファイルを作成し、このファイルをトレースします。
たとえば、Cygwin シェルで実行が完了したビルド コマンドをトレースする前に、cmd.exe
で Cygwin シェルを起動し、ビルド スクリプトを実行します。一例として、スクリプト build.sh
を使用してコードをビルドするには、DOS コマンド ラインで次のコマンドを入力します。
cmd.exe /C "C:\cygwin64\bin\bash.exe" --login -c build.sh
この手順で正しく完了したら、cmd.exe
からビルド コマンドを起動した後にトレースします。たとえば、コマンド ラインでは、次の手順で Polyspace のオプション ファイルを作成します。
.bat
ファイルにビルド コマンドを入力します。ファイルにrem @echo off cmd.exe /C "C:\cygwin64\bin\bash.exe" --login -c build.sh
launching.bat
などの名前を付けます。.bat
ファイルでビルド コマンドをトレースして、Polyspace のオプション ファイルを作成します。"C:\Program Files\MATLAB\R2025a\polyspace\bin\polyspace-configure.exe" -output-options-file myOptions.txt launching.bat
これで、オプション ファイルで polyspace-bug-finder
または polyspace-bug-finder-server
を実行できるようになります。