我通过以下调用从ls生成了一个drcov日志文件作为测试:
PATH=~/Downloads/DynamoRIO-Linux-7.1.0-1/bin64:$PATH drrun -root ~/Downloads/DynamoRIO-Linux-7.1.0-1 -t drcov -dump_text -- ls
它生成输出文件drcov.ls.22556.0000.proc.log。
然后我尝试使用以下调用将其转换为lcov:
~/Downloads/DynamoRIO-Linux-7.1.0-1/tools/bin64/drcov2lcov -input ./drcov.ls.22556.0000.proc.log
根据详细输出,drcov2lcov会跳过所有内容,并且不会产生覆盖。
我用自己的程序尝试过,该程序已经用RelWithDbgInfo编译过,并且是相同的。使用addr2line,我可以完美地从日志文件中解析地址。
我的错误是什么?
问候
[好吧,问题在于它仅与-dump_binary标志一起使用,而不与-dump_text标志一起使用。