如何利用核心文件在C / C ++中查找应用程序问题?

时间:2012-10-21 16:33:43

标签: c++ file debugging core

我不知道如何使用核心文件找到C / C ++ linux应用程序问题的根本原因。我知道,当应用程序出现意外情况时,核心文件会被处理。但我不知道从哪里开始。任何人都可以给我一个快速启动吗?

3 个答案:

答案 0 :(得分:1)

“gdb”是可用于分析Linux核心转储的主要工具。这里有几个很好的教程:

答案 1 :(得分:1)

学习分析来自Here的核心转储。这是我从中学到的。是的,它使用GDB。

this

答案 2 :(得分:0)

一些通用的帮助:

使用以下方法安装gdb:

yum install gdb

gdb 启动GDB,没有调试文件

gdb程序开始调试程序

gdb程序核心调试程序生成的coredump核心

gdb --help 描述命令行选项

1-首先找到生成核心文件的目录。 2-然后在目录中使用“ls -ltr”命令查找最新生成的核心文件。 3-要加载核心文件,请使用

核心文件的gdb二进制路径

这将加载核心文件。

4-然后您可以使用“bt”命令获取信息。有关详细的回溯,请使用“bt full”。

5-要打印变量,请使用“print varibale-name”或“p varibale-name”

6-要获得gdb的任何帮助,请使用“help”选项或使用“apropos search-topic”

7-使用“frame frame-number”转到所需的帧编号。

8-使用“向上n”和“向下n”命令选择帧n帧,并分别选择帧n帧。

9-要停止gdb,请使用“quit”或“q”。