开发者

Valgrind like tool on Mac OS 10.7 (Lion)

I need a tool which helps me to find memory leaks in a c program in a similar way valgrind does. I开发者_如何转开发t should figures out when a program overwrites memory it should not (e.g. by miscalculating an array index). I learned that there is the leaks utility along with the graphical instruments app.

However I think it can just find memory allocated with new (or malloc) which was not released and is not accessible anymore. Also I learned that valgrind is supposed to work on older releases (10.5 and 10.6), but I use lion (10.7).


Valgrind 3.7.0 (released 5th November 2011) supports Lion. http://valgrind.org


I would use the XCode developer tool MallocDebug. You should have this installed with XCode in your /Developer folder

Alternatively, you can run your application in gdb and use the native malloc logging by running

% gdb <program name>
(gdb) set env MallocStackLoggingNoCompact 1
(gdb) run

Then, you can use /usr/bin/leaks and /usr/bin/malloc_history to find obvious leaks

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜