C または C++ プログラムの動的メモリーアクセスデータの収集は、discover でバイナリに計測機構を組み込む手順と、計測機構付きバイナリを実行する手順の 2 つから成ります。
コードアナライザ用のデータを収集するために discover でプログラムに計測機構を組み込むには、プログラムを Oracle Solaris Studio バージョン 12.3 または 12.4 の C または C++ コンパイラでコンパイルしておく必要があります。 –g オプションでコンパイルするとデバッグ情報が生成され、動的メモリーアクセスエラーおよび警告に関するソースコードおよび行番号情報をコードアナライザで表示できるようになります。
プログラムが最適化なしでコンパイルされている場合に、discover はソースコードレベルでもっとも完全なメモリーエラー検出を提供します。 最適化を使用してコンパイルした場合、一部のメモリーエラーは検出されません。
Discover で計測機構を組み込むことのできる、またはできないバイナリの種類については、Oracle Solaris Studio 12.4: Discover および Uncover ユーザーズガイド のバイナリを適切に準備するおよびOracle Solaris Studio 12.4: Discover および Uncover ユーザーズガイド のプリロードまたは監査を使用するバイナリは互換性がないを参照してください。
% cp a.out a.out.save