寻找一种方法来排除 geninfo/genhtml 使用的文件

Posted

技术标签:

【中文标题】寻找一种方法来排除 geninfo/genhtml 使用的文件【英文标题】:Looking for a way to exclude files used by geninfo/genhtml 【发布时间】:2011-10-02 22:13:01 【问题描述】:

我们正在尝试使用 geninfo 和 genhtml(gcovr 的替代品,请参阅 here)使用 gcov 提供的覆盖率生成 html 页面。

geninfo 从 gcov 的 *.gcda 文件创建 lcov-tracefiles genhtml从上面的tracefiles中生成html文件

但是,最终结果不仅包括我们的代码,还包括来自 /usr/include 的文件。

有人知道排除这些的方法吗?

我尝试查看手册页,但找不到任何内容http://linux.die.net/man/1/geninfo

【问题讨论】:

【参考方案1】:

如果您只是想忽略 /usr/include 中的文件,更好的选择可能是“--no-external”,which is intended for exactly this purpose。

lcov --no-external -d $(BLD_DIR) --capture -o .coverage.run

【讨论】:

另外:如果您正在构建源外构建;您可以根据需要设置带有--directory 标志的源目录,以便找到正确的源 - 因为其他源将被省略。【参考方案2】:

您可以使用lcov -r 选项删除您不感兴趣的文件。

lcov -r <input tracefile> /usr/include/\* -o <output tracefile>

【讨论】:

以上是关于寻找一种方法来排除 geninfo/genhtml 使用的文件的主要内容,如果未能解决你的问题,请参考以下文章

您可以在设置中排除一种测试方法吗? (Laravel 测试 Phpunit)

删除 BigQuery 列的一种可能方法

优化查询以匹配和排除多个多对多条目

在简单的 Neo4j 查询中排除标签名称

一种排除特定数组的方法

学习:脱壳之异常法寻找OEP