2

我从 Valgrind 获得以下日志:

MPK ==5263== 4 bytes in 1 blocks are still reachable in loss record 1 of 84
==5263==    at 0x402CE68: malloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==5263==    by 0x43D9F4B: ??? (in /lib/i386-linux-gnu/libcrypto.so.1.0.0)
==5263==    by 0x43DA5DB: CRYPTO_malloc (in /lib/i386-linux-gnu/libcrypto.so.1.0.0)
==5263==    by 0x44449A5: ??? (in /lib/i386-linux-gnu/libcrypto.so.1.0.0)
==5263==    by 0x44451EE: ENGINE_add (in /lib/i386-linux-gnu/libcrypto.so.1.0.0)
==5263==    by 0x444A776: ENGINE_load_dynamic (in /lib/i386-linux-gnu/libcrypto.so.1.0.0)

我很确定我的代码或使用 libcrypto 的 libcurl 没有任何问题,因此我想禁止显示这些消息。

文档中我可以找到任何合适的抑制类型。

抑制文件中应该写什么?

4

1 回答 1

4

您可以通过使用 运行相同的命令来生成抑制块--gen-suppressions=yes。这是弄清楚如何使用 valgrind 抑制给定错误的最简单方法。让它告诉你你应该包括什么作为压制。

一旦 valgrind 生成了抑制,你可以把它放在一个文本文件中。

再次运行 valgrind 并使用--suppressions=<filename>参数指定抑制文件,中提琴您的错误/警告将消失。

于 2012-12-03T22:57:35.783 回答