だから私はlinpack.c
というファイルを最適化しようとしています。 gcov
を使用して、最も実行された10行を見つける必要があります。これらのコンパイラオプションが与えられました。
-fprofile-arcs -ftest-coverage -O2
だから私はこれを走らせた
$ gcc -fprofile-arcs -ftest-coverage -O2 linpack.c
出力はlinpack, linpack.gcno
でした。
gcov linpack.c
を生成するためにlinpack.c.gcov
を実行しようとすると、エラーが発生します。
linpack.gcda, cannot open data file.
誰かが私が間違っていることを教えてもらえますか?これは簡単なはずですが、私は現在1時間以上苦労しています。
プロファイルフラグを使用してコンパイルしたプログラムを実行すると、linpack.gcda
ファイルが作成されます。 gccコマンドラインで(-o
オプションを使用して)出力ファイル名を指定しなかったため、a.out
として実行する必要があります。例えば:
$ gcc -fprofile-arcs -ftest-coverage -O2 hello.c
$ ls hello.*
hello.c hello.gcno
$
$ ./a.out
Hello world!
$ ls hello.*
hello.c hello.gcda hello.gcno
$