好记性不如铅笔头

编程

Linux下生成c/c++项目代码覆盖率的产生方法

在Linux上的c/c++开发一般都使用gcc/g++作为主要的编译器,如果需要产生覆盖率数据需要做下面的编译链接设置,
编译的时候,增加 -fprofile-arcs -ftest-coverage 或者 –coverage;
链接的时候,增加 -fprofile-arcs 或者 –lgcov;
打开–g3 选项,去掉-O2以上级别的代码优化选项;否则编译器会对代码做一些优化,例如行合并,从而影响行覆盖率结果。

网址参考
https://blog.csdn.net/zm_21/article/details/37820257
http://www.cnblogs.com/jackyim/p/3772306.html
https://gcovr.com/
https://blog.csdn.net/zhouzhaoxiong1227/article/details/50352944

发表评论

8 − 3 =

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据