Polyspace使用時とビルド時で標準ライブラリ ヘッダーを合わせるにはどうすればよいか?
16 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
現在Polyspace Bug Finder Server, Code Prover Serverを使用して、手書きCコードの静的解析を行っております。
環境はWindows 10でツールはMingwのgccコンパイラ、PolyspaceはR2021aです。
あるC言語のコードに対してPolyspace Bug Finderによる解析を行い、特にエラーもなく実行することができました。
その次に、Mingwを使用してビルドを行ったところ、"error: unknown type name 'timer_t'"や"poll.h: No such file or directory"というエラーメッセージが表示されました。
Polyspace使用時には起こらずなぜビルド時にエラーが起こるのか不思議に感じましたが、調べてみると以下のような相違がありました。
・Polyspaceのincludeディレクトリ(C:\Program Files\Polyspace Server\R2021a\polyspace\verifier\cxx\include)にはpoll.hファイルがあるが、Mingwのincludeディレクトリ(C:\mingw64\include)にはない。
・Polyspaceのincludeディレクトリのtime.hには"typedef __timer_t timer_t;"という記述があるが、Mingwのincludeディレクトリのtime.hにはない
上記のことから、Polyspace使用時とビルド時で標準ライブラリ ヘッダーは合わせたいのですが、そのような方法は一般的なのでしょうか?
また標準ライブラリ ヘッダーを合わせる場合、どのような方法を取ればよいのでしょうか?
(以下のページにヒントとなりそうな情報が記載されてありました。
<https://jp.mathworks.com/help/bugfinder/ug/provide-standard-library-headers-for-polyspace-analysis.html>
このページを参考にするならば、"-I"オプションを使用してMingwのincludeディレクトリであるC:\mingw64\includeを指定すればよいのでしょうか?またこの場合、time.hファイルの競合などの問題は起きないのでしょうか?)
-----------追記-----------
Polyspaceのオプションにて、-compiler gnu7.xとしている一方、Mingwのgccコンパイラはバージョンが13.2.0でした。
ここでgccのバージョンを合わせれば上記の問題は解決するのでしょうか?
0 Kommentare
Antworten (1)
Siehe auch
Kategorien
Mehr zu ビッグ データの処理 finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!