调试valgrind生成的核心

时间:2009-12-23 04:26:35

标签: debugging gdb valgrind

Valgrind制作了一个vgcore.NNNN文件 - 如何使用GDB调试核心?我是否需要使用原始可执行文件并提供核心,还是有其他方法可以执行此操作?

使用valgrind作为根可执行文件似乎不起作用,并且使用在gDB中直接在带有核心的GDB下运行的可执行文件似乎会产生错误的回溯。

1 个答案:

答案 0 :(得分:9)

这对我来说很好用:

gdb ./a.out vgcore.21650

这就是你应该如何使用vgcore。

如果您的程序在崩溃之前损坏了堆栈,那么显然您不会从vgcore获得良好的堆栈跟踪。您可能希望使用导致崩溃的实际Valgrind报告来扩展您的问题。