GCov tests with gcc 4.x
Thanks to Thomas for giving me this clue to get coverage reports with code compiled with gcc 4.x.
In order to get coverage logs, CFLAGS
should include -fprofile-arcs -ftest-coverage
(and preferrable to get also -O0
). It’s what the gcc manual says. It was enough for gcc 3.x. But in gcc 4.x it may not. When you link, you can get this error:
hidden symbol `__gcov_init' in /usr/lib/gcc/i486-linux-gnu/4.0.3/libgcov.a(_gcov.o) is referenced by DSO
The problem seems to be caused by the linker. In theory, adding -ftest-coverage
should imply linking gcov automatically. But it’s not true, at least in my case. The solution: adding -lgcov
to the LDFLAGS
. Finally I have coverage reports for my gcc 4.1.2 compiler.
CFLAGS=-fprofile-arcs -ftest-coverage
LDFLAGS=-lgcov
- Previous: I'm back
- Next: JHBuild Buildbot integration scripts... done!