有人可以告诉我一个如何向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文件中。我错过了一步吗?我做错了什么?
答案 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。