valgrind日志文件中缺少泄漏摘要

时间:2016-12-01 04:44:48

标签: xml memory memory-leaks valgrind memcheck

我正在对我的软件进行一些内存分析,并在使用valgrind的以下命令运行标准内存泄漏检查后

valgrind --tool=memcheck --leak-check=full

我得到以下摘要:

  

== 12550 ==泄漏摘要:

     

== 12550 ==绝对丢失:7块中的597,170字节

     

== 12550 ==间接丢失:10个块中的120个字节

     

== 12550 ==可能丢失:1,455块中的770,281字节

     

== 12550 ==仍然可以访问:2,319个块中的181,189个字节

     

== 12550 ==抑制:0个块中的0个字节

     

== 12550 ==未显示可达块(找到指针的块)。

     

== 12550 ==要查看它们,请重新运行: - leak-check = full --show-reachable = yes

     

== 12550 ==

     

== 12550 ==对于检测到的和抑制的错误计数,请重新运行:-v

     

== 12550 ==错误摘要:来自325个上下文的325个错误(被抑制:176个来自11个)

但我希望以xml格式获得结果。所以我用valgrind的以下命令

执行了内存泄漏检查
valgrind --tool=memcheck --leak-check=full --xml=yes --xml-file=path_to_output

此命令成功执行。但我注意到的是,xml out put不像之前那样包含 LEAK SUMMARY

所以我想知道有什么办法可以用xml格式生成LEAK SUMMARY。

由于

1 个答案:

答案 0 :(得分:1)

目前没有任何措施可以说服Valgrind以XML格式输出LEAK SUMMARY。仅在未输出到XML文件时才打印摘要。

有关详细信息,请参阅Valgrind的源代码,函数print_results():

if (VG_(clo_verbosity) > 0 && !VG_(clo_xml)) {
    ...
    VG_(umsg)("LEAK SUMMARY:\n");
    ...
}