2013-04-25 16 views
7

brewを使用してValgrindがインストールされています。 Valgrindの中ValgrindはMac OSX 10.8の空のプログラムでメモリリークを示します

#include <stdio.h> 
#include <stdlib.h> 
int main() 
{ 
    return 0; 
} 

gcc -g -o hello hello.c 

valgrind --tool=memcheck --leak-check=yes ./hello 

enter image description here

+0

'ImageLoaderMach0'とは何ですか? – Alex

+0

わかりません。私はそれ以上の大きなエラーメッセージを受け取りました。 –

+1

@Alex Machは、そのOS上の基本となるカーネルの名前です。 Mach-Oは実行形式の名前です(http://en.wikipedia.org/wiki/Mach-O)。 "ImageLoader"私はあなたの解釈に任せます。 「ImageLoaderMach0」はOPの入力には含まれておらず、本質的に、OPはこのコードの内容が完全に分からないためにこの質問をしました。 –

答えて

6

これは、心配する必要のあるメモリリークではありません。 ImageLoaderはOS Xランタイムの一部であり、バイナリと動的ライブラリの読み込みを行います。それは初期化の間に一度メモリを割り当て、それについては忘れてしまいますが、メモリが一度しか割り当てられない小さなブロックなので無害です。そしてValgrindが好きではないものの束をしますが、それは間違っていません。 add these to your suppression fileです。

2

マックOSX 10.8のサポートはまだ限られています。 ImageLoaderMachO :: doInitialization ...はあなたの抑制ファイルになければなりません。

1

もう一つの答えは正しいですが、私はちょうど同じ問題を抱えていて、抑圧ファイルを作成するのに少し問題がありました。ですから、他の人を助けるために、私はMac OS X Mountain Lion用に生成した最小限の抑制ファイルを次のようにしています: https://www.dropbox.com/s/2btyqnf8uesgsis/minimal.supp

+1

リンクはアクティブではありません。 – JoshBramlett

関連する問題