7

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

在此处输入图像描述

4

3 回答 3

6

这不是您需要担心的内存泄漏。ImageLoader 是 OS X 运行时的一部分,负责加载二进制文件和动态库。它在初始化期间分配了一次内存并忘记了它,但它是无害的,因为它是只分配一次的一小块内存。它做了很多 Valgrind 不喜欢的事情,但并不是不正确的。您应该将这些添加到您的抑制文件中。

于 2013-05-07T07:54:44.070 回答
2

Valgrind 对 Mac OSX 10.8 的支持仍然有限。ImageLoaderMachO::doInitialization... 应该在您的抑制文件中。

于 2013-05-06T17:43:51.550 回答
1

另一个答案是正确的,我只是碰巧遇到了同样的问题,并且在创建抑制文件时遇到了一些麻烦。因此,为了帮助其他人,这是我为 Mac OS X Mountain Lion 生成的最小抑制文件: https ://www.dropbox.com/s/2btyqnf8uesgsis/minimal.supp

于 2013-08-14T20:47:48.047 回答