gcov 是一个测试覆盖程序。将它与 gcc 配合使用,可以分析您的程序,帮助创建更高效、运行更快的代码,并发现程序中未经测试的部分。您可以将 gcov 用作剖析工具,帮助发现优化工作对代码的最佳影响。您还可以将 gcov 与其他剖析工具 gprof 一起使用,以评估代码中哪些部分占用了最多的计算时间。
剖析工具可帮助您分析代码的性能。使用 gcov 或 gprof 等剖析器,您可以找到一些基本的性能统计信息,例如
- 每行代码的执行频率
- 实际执行了哪些代码行
- 每段代码使用了多少计算时间
编译
编译的程序的时候 gcc 选项需要加入选项
1 | CFLAGS += -fprofile-arcs -ftest-coverage |
编译时,每个.c源文件都会生成.gcno文件。执行可执行文件时,每一个源文件都会生成.gcda文件。
收集覆盖率信息
1 | # 收集覆盖率信息 |
效果图

安装
下载对应的源码包,下载地址

问题
- 报错缺少Time::HiRes模块
解决方案:yum -y install perl-Time-HiRes
