当前位置:嗨网首页>书籍在线阅读

02-GNU调试器(GDB)

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

13.1 GNU调试器(GDB)

如果你花了很多时间开发Linux应用程序,你必定会用几个小时了解一下GNU调试器。GDB可以说是开发人员工具箱中最重要的工具。它由来已久,功能不断增强,并且支持针对多种架构和微处理器的底层硬件调试。应当注意的是,GDB的用户手册和本书差不多大小。我们在这里只是介绍GDB的入门知识。建议你学习一下本章最后一节中列出的用户手册。

由于本书是有关嵌入式Linux开发的,我们使用一个被编译成交叉调试器的GDB版本。也就是说,这个调试器本身运行在你的开发主机上,但它只能理解采用目标架构的二进制可执行文件,这个架构是我们在配置编译GDB时选择的。在下面的几个例子中,我们使用的GDB是针对一个XScale(ARM)架构的目标处理器编译的,它运行在Linux开发主机上。虽然使用简写名称gdb,但我们提供的例子是基于交叉版本的gdb,它支持XScale架构,来自MontaVista公司出品的针对ARM XScale架构的嵌入式Linux发行版。这个二进制可执行文件的名称是xscale_be-gdb。它也是GDB,不过它是针对交叉开发环境配置的。

GNU调试器是一个复杂的程序,构建时有很多配置选项可选。我们不想在这里介绍如何构建gdb;已经有其他文献讨论了这个主题。本章,我们假设你手头有一个可以正常工作的GDB,而且它是针对你所使用的目标架构和主机开发环境而配置的。