Valgrind 使用 brew 安装。
#include <stdio.h>
#include <stdlib.h>
int main()
{
return 0;
}
gcc -g -o hello hello.c
valgrind --tool=memcheck --leak-check=yes ./hello
Valgrind 使用 brew 安装。
#include <stdio.h>
#include <stdlib.h>
int main()
{
return 0;
}
gcc -g -o hello hello.c
valgrind --tool=memcheck --leak-check=yes ./hello
这不是您需要担心的内存泄漏。ImageLoader 是 OS X 运行时的一部分,负责加载二进制文件和动态库。它在初始化期间分配了一次内存并忘记了它,但它是无害的,因为它是只分配一次的一小块内存。它做了很多 Valgrind 不喜欢的事情,但并不是不正确的。您应该将这些添加到您的抑制文件中。
Valgrind 对 Mac OSX 10.8 的支持仍然有限。ImageLoaderMachO::doInitialization... 应该在您的抑制文件中。
另一个答案是正确的,我只是碰巧遇到了同样的问题,并且在创建抑制文件时遇到了一些麻烦。因此,为了帮助其他人,这是我为 Mac OS X Mountain Lion 生成的最小抑制文件: https ://www.dropbox.com/s/2btyqnf8uesgsis/minimal.supp