当我做gcov时。没有问题。但是,当我做gcov -a时。 gcov僵住了。输出的最后几行是:
文件'/usr/include/boost/archive/detail/iserializer.hpp' 执行的行数:55的78.18% /usr/include/boost/archive/detail/iserializer.hpp:creating'iserializer.hpp.gcov'
文件'/usr/include/boost/serialization/extended_type_info_typeid.hpp' 执行的行数:27的40.74% /usr/include/boost/serialization/extended_type_info_typeid.hpp:creating'extended_type_info_typeid.hpp.gcov
你知道为什么会这样吗?我需要“-a”的原因是当我使用lcov时,它给gcov提供了这个选项,我可以破解geninfo来忽略该选项,但我不愿意,因为我最终会在公共系统上运行lcov。
感谢您提出任何意见!
答案 0 :(得分:0)
我也有使用boost :: serialization的代码 - lcov进程不是/ frozen /,它只需要很长时间才能运行。几个小时后我已经成功完成了,我终于得到了一份不错的lcov报告。
能够在运行lcov -c时排除boost序列化代码的处理会很可爱但是我还没弄清楚到底是怎么做的。 (当然,我/希望/要覆盖使用升压序列化的代码,而不是升压头本身)甚至把// LCOV_EXCL_START&围绕大多数序列化代码的LCOV_EXCL_STOP不起作用,因为我认为这些排除标记仅在调用genhtml时使用,而不是在lcov -c上使用。