其实第四篇也差不多了,是介绍 gdb 在 symbian 系统上的调试示例。
卖完这些,我也就技穷了。欢迎大家拍砖。
1、什么是gdb ?
gdb 是一个开源的、应用于 linux/unix 平台下的 调试工具。全称是 gnu debug。( gnu 就不用解释了吧? ) 是一个 linux/unix平台下的源代码级的调试工具。其性能优良、功能齐备、易于使用,广受支持。
目前的版本是 6.8, 2008年 3 月 发布的。
gdb 的官方网站 是 http://www.gnu.org/software/gdb/。
学习 gdb 最权威的教材是 GDB User Manual 和 GDB Internals Manual。你可以在 其官方网站 下载到。http://www.gnu.org/software/gdb/documentation/
1、为什么要使用 gdb。
最朴实的理由:应用场合广泛。gdb的应用场合有多广泛呢?
可以参考 gdb 的官方网站上一句牛X哄哄的话。GDB can run on most popular UNIX and Microsoft Windows variants.
目前,多数的嵌入式开发工具和嵌入式平台都支持 gdb 作为调试工具。从强悍的 BDI,到廉价的 Wiggler,都支持 gdb 作为调试工具。而嵌入式的操作系统,linux平台, symbian平台,Android平台,也都对 gdb 有良好的支持。
就其功能来说,它有如下的优点:
1、良好的跨平台特性。
2、支持远程调试( remote debug )
3、支持指令级、函数级的控制,包括单步( step )、跳转( jump )、返回( return )等。支持对寄存器、的读写操作,支持条件断点,读、写断点,以及硬件断点。
4、支持内核调试和应用程序级别的调试,支持源代码级的调试。支持对正在运行的进程的 attach和 deattach。
5、对 c++特性的支持和 unix 特性的支持。例如,支持异常捕获、信号捕获。
6、支持对多线程、多进程程序的控制。
优点基本说全了吧?简单地概括就是:别的调试器有的功能,它有,别的调试器没有的功能,它也有。