GCC -fprofile-arcs -ftest-coverage编译选项

GCC编译时使用-fprofile-arcs和-ftest-coverage选项能生成覆盖率数据。这两个选项分别用于创建.gcno文件和记录程序流程执行次数,配合gcov工具可分析代码覆盖率。编译后程序运行结束会产生.gcda文件,这些文件与源代码紧密匹配,未经优化的源代码会产生更准确的覆盖率数据。
摘要由CSDN通过智能技术生成

gcc需要静态注入目标程序编译选项,在编译链接的时候加入2个选项(-ftest-coverage -fprofile-arcs ),编译结束之后会生成 .gcno 文件,而经过静态注入的目标程序在“正常结束”后,会在运行目录下产生.gcda数据文件,通过gcov工具就可产生覆盖率数据结果。

  • -ftest-coverage

    Produce a notes file that the gcov code-coverage utility (see gcov—a Test Coverage Program) can use to show program coverage. Each source file’s note file is called auxname.gcno. Refer to the -fprofile-arcs option above for a description of auxname and instructions on how to generate test coverage data. Coverage data matches the source files more closely if you do not optimize.
    让编译器生成与源代码同名的.gcno文件(note file),这种文件含有重建基本块依赖图和将源代码关联至基本块的必要信息。

  • -fprofile-arcs

    Add code so that program flow arcs are instrumented. During execution the program records how many times each branch and call is executed and how many times it is taken or returns. When the compiled

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值