使用GDB进行调试
在软件开发过程中,调试是一项至关重要的工作。GDB(GNU Debugger)是一款强大的调试工具,可帮助开发者定位和解决程序中的问题。本文将详细介绍如何使用GDB进行调试,包括查看核心文件、不同的用户界面,以及内核代码调试等内容。
1. 查看核心文件
当程序发生核心转储(core dump)时,会生成一个核心文件。例如:
# ls /corefiles
core.sort-debug.1431425613
可以使用GDB查看核心文件,以下是一个示例GDB会话:
$ arm-poky-linux-gnueabi-gdb sort-debug
/home/chris/rootfs/corefiles/core.sort-debug.1431425613
[...]
Core was generated by `./sort-debug'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x000085c8 in addtree (p=0x0, w=0xbeac4c60 "the") at sort-debug.c:41
41 p->word = strdup (w);
这表明程序在第41行停止。使用 list
命令可以查看附近的代码:
(gdb) list
37