无法抑制valgrind中的错误

时间:2015-02-13 22:00:35

标签: c++ linux valgrind

有人可以告诉我一个如何向valgrind添加自定义抑制的示例吗?我99.99%肯定它会为字符串类生成错误,我想抑制.supp文件中的错误。我认为将它添加到目录或只是将我的函数添加到default.supp会很简单,但错误不会被抑制。这就是我所做的:

1)我和--gen-suppressions=yes一起玩valgrind 2)获得下面列出的错误的生成抑制

  #Custom Suppression
  {
     MyCustomSupression
     Memcheck:Addr1
     fun:strlen
     fun:_ZNSsC1EPKcRKSaIcE
     obj:/home/steve/path/to/the/program
     obj:/home/steve/path/to/the/program
     obj:/home/steve/path/to/the/program
     obj:/home/steve/path/to/the/program
     obj:/home/steve/path/to/the/program
     obj:/home/steve/path/to/the/program
     obj:/home/steve/path/to/the/program
     fun:(below main)

}

3)我将文件添加到default.supp所在的目录中,该目录位于我的eclipse文件夹中

4)我再次运行valgrind,但错误仍然存​​在

注意:我还尝试将抑制添加到default.supp文件中。我错过了一步吗?我做错了什么?

1 个答案:

答案 0 :(得分:0)

我很确定你在运行valgrind时需要指定抑制文件,就像这个

一样
##Generate suppressions
valgrind --gen-suppressions=yes myProgram
## Cut-Paste into string.supp
##Now rerun valgrind
valgrind --suppressions=./string.supp myProgram

有关详细信息,请参阅command line options