DrCov is not usable by default
I claim that DrCov usability can be improved. Consider trying to get coverage of hello,world:
% bin64/drrun -t drcov -- /work/dr/test/hello64
Hello world!
Goodbye world!
% tools/bin64/drcov2lcov -input drcov.hello64.21064.0000.proc.log
[DRCOV2LCOV] WARNING(1): No output file name specified: using default coverage.info
[DRCOV2LCOV] INFO(1): Reading input files...
[DRCOV2LCOV] INFO(1): Enumerating line info...
[DRCOV2LCOV] INFO(1): Writing output file...
% perl tools/bin64/genhtml coverage.info
Reading data file coverage.info
Found 1217 entries.
Found common filename prefix "/usr/src/debug/glibc-2.21"
Writing .css and .png files.
Generating output.
Processing file ./stpncpy.c
genhtml: ERROR: cannot read ./stpncpy.c
The default just don't work. The user needs to pass -src_filter to drcov2lcov to rule out all of the system libraries, but there's not always single pattern that will match all of an app's source files.
Another option of passing --ignore-errors=source coverage.info
to genhtml will turn the errors into warnings, but pollute the html output with tons of unwanted pages about system library files.
A better solution of ignoring system libraries by default needs to be developed.