【问题标题】:NO GCOV DATA FOUND未找到 GCOV 数据
【发布时间】:2013-08-31 05:23:47
【问题描述】:

我将 Eclipse Juno 与 GCC 编译器一起用于 C 代码。我正在尝试使用 gcno 插件来获取代码覆盖率。

当然,我在编译器和链接器标志中添加了-ftest-coverage -fprofile-arcs。 但是,当我点击代码覆盖的分析工具时,我得到下图中的错误:

"重新编译至少一个 C/C++ 源文件,使用 “-fprofile-arcs”和“-ftest-coverage”选项并链接您的 使用“-lgcov”可执行。如果您在单个 gcc 中编译和链接 调用,您可以使用 gcc "--coverage" 选项。 "

请帮助我解决这个错误。

【问题讨论】:

  • 检查过.gcno文件是编译后生成的吗?

标签: eclipse testing gcov


【解决方案1】:

为了使用 gcov 代码覆盖率结果,您不仅必须使用您提到的编译器和链接器标志进行编译,还必须运行单元测试或运行程序来收集数据。 Gcov 在到达代码中的点时收集数据。如果您不运行该程序,您将不会生成任何数据。

【讨论】:

  • 正确。运行会生成 .gcno 和 .gcda 文件。请注意,覆盖范围是累积的。如果每次运行执行一个行并且您运行两次,则其计数将为 2。删除这些文件以重置计数器。请注意,当您make clean 时,Eclipse 生成的 makefile 将不会删除它们
猜你喜欢
  • 2018-11-28
  • 2012-12-07
  • 2014-08-27
  • 2016-05-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多