• Showing Page History #74231

使用方法

readmeの「4.ユーザ空間のプログラムのカバレッジデータをアクセスする方法の例」に書かれている方法の通りなのですが、分かりにくいので、1つ1つ説明していきます。

  1. まず、前提条件としてgccにてコンパイルするときに、オプションに「-fprofile-arcs」と「-ftest-coverage」が指定されている必要があります。
    あと、リンク時に-lgcovの指定を忘れずに。
    例えば、ソースファイルがmain.cだとすると、通常は
    gcc -g -c main.c
    gcc -o a.out main.o
    
    という感じでコンパイル、リンクするところを、
    gcc -g -fprofile-arcs -ftest-coverage -c main.c
    gcc -o a.out main.o -lgcov
    
    で、コンパイル、リンクすることになります。
    そうそう、上記の例ではやっていませんが、「-O0」(※大文字のオーとゼロです)はつけた方がいいです。理由ですが、最適化してしまうと、うまくできないことがあるんです。なので、最適化しないよう、「-O0」をつけることをお勧めします。