其實第四篇也差不多了,是介紹 gdb 在 symbian 系統(tǒng)上的調(diào)試示例。
賣完這些,我也就技窮了。歡迎大家拍磚。
1、什么是gdb ?
gdb 是一個開源的、應(yīng)用于 linux/unix 平臺下的 調(diào)試工具。全稱是 gnu debug。( gnu 就不用解釋了吧? ) 是一個 linux/unix平臺下的源代碼級的調(diào)試工具。其性能優(yōu)良、功能齊備、易于使用,廣受支持。
目前的版本是 6.8, 2008年 3 月 發(fā)布的。
gdb 的官方網(wǎng)站 是 http://www.gnu.org/software/gdb/。
學(xué)習(xí) gdb 最權(quán)威的教材是 GDB User Manual 和 GDB Internals Manual。你可以在 其官方網(wǎng)站 下載到。http://www.gnu.org/software/gdb/documentation/
1、為什么要使用 gdb。
最樸實的理由:應(yīng)用場合廣泛。gdb的應(yīng)用場合有多廣泛呢?
可以參考 gdb 的官方網(wǎng)站上一句牛X哄哄的話。GDB can run on most popular UNIX and Microsoft Windows variants.
目前,多數(shù)的嵌入式開發(fā)工具和嵌入式平臺都支持 gdb 作為調(diào)試工具。從強悍的 BDI,到廉價的 Wiggler,都支持 gdb 作為調(diào)試工具。而嵌入式的操作系統(tǒng),linux平臺, symbian平臺,Android平臺,也都對 gdb 有良好的支持。
就其功能來說,它有如下的優(yōu)點:
1、良好的跨平臺特性。
2、支持遠程調(diào)試( remote debug )
3、支持指令級、函數(shù)級的控制,包括單步( step )、跳轉(zhuǎn)( jump )、返回( return )等。支持對寄存器、的讀寫操作,支持條件斷點,讀、寫斷點,以及硬件斷點。
4、支持內(nèi)核調(diào)試和應(yīng)用程序級別的調(diào)試,支持源代碼級的調(diào)試。支持對正在運行的進程的 attach和 deattach。
5、對 c++特性的支持和 unix 特性的支持。例如,支持異常捕獲、信號捕獲。
6、支持對多線程、多進程程序的控制。
優(yōu)點基本說全了吧?簡單地概括就是:別的調(diào)試器有的功能,它有,別的調(diào)試器沒有的功能,它也有。