我一直试图获得我使用lcov运行的一些测试用例的代码覆盖率。
但是当我跑的时候
lcov --directory $PWD --capture --output-file lcov.output我收到警告了
geninfo:警告:无法在test.c.gcov文件中找到.bb条目,跳过文件!
如果我直接在test.c上运行gcov,我就能够生成一个gcov输出,它成功地显示了利用率。
我对代码覆盖还不熟悉。如果能帮助解决这个问题,我们将不胜感激。
发布于 2012-09-12 11:51:22
在某个时候,gcov格式发生了变化。基本上,问题是因为当前版本的gcov生成一个具有源文件名等的头文件。Lcov期望这个标题并试图提取此标头,结果显示了错误。
作为解决办法,我修改了LCOV代码,以便如果返回的头部为空,源文件名将直接从gcov文件名中假定。此解决方案可能不是最优雅的解决方案,因为如果创建gcov文件的名称与源文件名不同,则可能会导致不兼容。
更新:这一特殊问题是由于lcov-1.8中的一个bug造成的。来自lcov-1.10的版本应该对此进行修复。(http://ltp.cvs.sourceforge.net/viewvc/ltp/utils/analysis/lcov/bin/geninfo?r1=1.106&r2=1.107)
https://stackoverflow.com/questions/12248346
复制相似问题