Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Valgrind显示Mac OSX 10.8上的空程序内存泄漏_C_Macos_Valgrind_Memory Leaks - Fatal编程技术网

Valgrind显示Mac OSX 10.8上的空程序内存泄漏

Valgrind显示Mac OSX 10.8上的空程序内存泄漏,c,macos,valgrind,memory-leaks,C,Macos,Valgrind,Memory Leaks,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 #包括 #包括 int main() { 返回0; } gcc-g-o你好,你好 valgrind--tool=memcheck--leak che

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
#包括
#包括
int main()
{
返回0;
}
gcc-g-o你好,你好
valgrind--tool=memcheck--leak check=yes./hello

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

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

另一个答案是正确的,我恰好遇到了同样的问题,并且在创建抑制文件时遇到了一些问题。为了帮助其他人,下面是我为Mac OS X Mountain Lion生成的最小抑制文件:

什么是
ImageLoaderMach0
?我不确定。上面有一大堆错误消息。@Alex Mach是该操作系统底层内核的名称。Mach-O是可执行格式()的名称。“图像加载器”我将留给你解释。请注意,“ImageLoaderMach0”不是OP输入的一部分,本质上,OP问这个问题是因为他不完全知道这段代码的功能(给予或接受)。可能,您必须抑制内存泄漏,因为它们是代码中的第三方,或者不是由您维护的。不过,这很奇怪。()Valgrind对Mac OSX 10.8的支持仍然有限。ImageLoaderMachO::doInitialization。。。应该在抑制文件中。链接不再处于活动状态。