GCOV:使用 GCC 构建时 --coverage 和 --ftest-coverage 有啥区别?
Posted
技术标签:
【中文标题】GCOV:使用 GCC 构建时 --coverage 和 --ftest-coverage 有啥区别?【英文标题】:GCOV: What is the difference between --coverage and --ftest-coverage when building with GCC?GCOV:使用 GCC 构建时 --coverage 和 --ftest-coverage 有什么区别? 【发布时间】:2015-05-04 14:28:59 【问题描述】:尝试启动并运行代码覆盖率,我只是先阅读文档。我发现有几篇文章提到了使用--coverage
标志进行构建,而其他文章则提到了--ftest-coverage
。
两个描述似乎都说它们做同样的事情,但我不确定。
这里有两篇文章:
http://bobah.net/d4d/tools/code-coverage-with-gcov
http://www.osadl.org/Dumping-gcov-data-at-runtime-simple-ex.online-coverage-analysis.0.html
有什么区别?
【问题讨论】:
--coverage
只是-ftest-coverage -fprofile-arcs
这两个开关的缩写。
这些标志是否可以与 g++ 一起使用??
【参考方案1】:
正如 cmets 中所述,--coverage
是与代码覆盖率相关的其他标志的同义词,具体取决于上下文。
3.11 Program Instrumentation Options:
--覆盖率
此选项用于编译和链接代码以进行覆盖分析。该选项是 -fprofile-arcs 的同义词 -ftest-coverage(编译时)和-lgcov(链接时)。
【讨论】:
以上是关于GCOV:使用 GCC 构建时 --coverage 和 --ftest-coverage 有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章