gcov - 为什么在运行 gcov 时会收到 "has arcs from exit block"消息?

标签 gcov

我正在运行 gcov 来测量覆盖率,但对于我在 C 代码中使用的每个函数,我都收到“有来自退出 block 的弧”消息。这条消息有什么问题吗?我应该忽略它们吗?

最佳答案

这可能意味着您的 gcno 文件是使用较新/不同版本的 gcc 编译器生成的。看看你是否在开始时也有像 'version '404*' 这样的警告,更喜欢 '402*' 如果是,解决方案如下:

检查 g++ --versiongcov --version 是否给您相同的结果。如果没有,请更新您的工具,例如 sudo apt-get install gcov,或特定版本,例如 `sudo apt-get install gcc-4.7。

如果您有多个版本的 gcc 安装程序,您可以使用 update-alternatives 在它们之间切换:

查询(你有什么)示例:sudo update-alternatives --query gcc

添加/更改示例:sudo update-alternatives --install/usr/bin/gcc gcc/usr/bin/gcc-4.7 60

关于gcov - 为什么在运行 gcov 时会收到 "has arcs from exit block"消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36037451/

相关文章:

c++ - gcov 不生成覆盖文件

linux - 未定义对 `__gcov_exit' 的引用?

c - gcov 警告 : merge mismatch for summaries

code-coverage - gcov 可以处理共享对象吗?

objective-c - lcov 是否生成中间 .gcov 文件?

cmake - 将gcov与cmake一起使用时未创建.gcda文件

c - gcov 不生成 gcda 文件

c++ - gcov-工具合并 : "not a gcov data file"

c++ - 使用 --coverage 选项编译时是否定义了任何宏?

python - Windows 下的 Gcovr 错误