我使用的是标准的gcc从CentOS软件库4.4软件包开发64位的CentOS 5.8静态链接的64位C ++应用程序。 这似乎是用比我预期的更多的内存,所以我试图用地块来分析内存使用情况。 我已经编译调试信息,然后运行
的valgrind --tool =地块./MyProg
从那里MYPROG所在的目录。 它从来没有产生比下面massif.out.XXXX例子以外的任何结果。
desc: (none)
cmd: ./MyProg
time_unit: i
#-----------
snapshot=0
#-----------
time=0
mem_heap_B=0
mem_heap_extra_B=0
mem_stacks_B=0
heap_tree=empty
请注意,这是该文件的全部内容和我的程序可以为许多分钟。
我曾尝试各种选项的valgrind和地块无济于事。 我甚至用了MYPROG绝对路径尝试,以防万一。 我尝试下载的valgrind的最新的稳定版本(3.8.1)和编译,并与相同的结果运行(因为CentOS是使用3.5.0)。 作为一个健全检查我跑
的valgrind --tool =地块的ls -l
和它产生具有非零存储器使用多个快照按预期方式。
我试着在网上搜索使用我能想到的关键词的每个组合,但没有发现任何类似的问题。
作为一个方面说明,我可以成功地利用配置文件的valgrind的默认MEMCHECK工具的应用,这是有用的信息情况。
有谁知道为什么地块将无法分析我的应用程序?