使用带有标志--coverage的CMake编译并运行我的boost单元测试程序后,将创建扩展名为.cpp.gcda和.cpp.gcno的文件。如果我运行gcovr,它声称找不到.gcno文件(错误消息".gcno:无法打开图形文件")。我可能会移动所有输出文件,但那真的很尴尬/愚蠢。
其他人的相关问题可以通过使用CTest来解决,但由于我使用Jenkins,我希望坚持使用gcovr并使用cobertura xml输出。
Ps。也许我应该简单地问:我应该如何将CMake与gcovr结合起来?
这是我们在jenkins内部用于相同设置的解决方案:http://www.semipol.de/archives/320.您可以简单地从链接的RSC库中获取CMake宏,用于自己的目的。
除此之外,阅读了一些关于最近gcc版本中覆盖文件格式略有更改的内容,而gcovr似乎没有跟上。但我不记得我在哪里读到的。