加盟餐飲的網(wǎng)站建設(shè)蘭州網(wǎng)站seo服務(wù)
安裝
安裝gdb的具體步驟如下:
1、查看當(dāng)前gdb安裝情況
rpm -qa | grep gdb
如果有,則可以先刪除:
rpm -e --nodeps 文件名
如果沒有,則進(jìn)行下一步。
2、下載gdb源碼包或者直接apt安裝。
apt命令安裝:
sudo apt install gdb
源碼包安裝:
在linux中輸入:
wget http://ftp.gnu.org/gnu/gdb/gdb-7.10.1.tar.gz
解壓:
tar -zxvf gdb-7.10.1.tar.gz
進(jìn)入gdb目錄:
cd gdb-7.10.1
輸入命令:
./configure
make
make install
3、查看是否安裝成功
gdb -v

使用
編寫一段簡(jiǎn)單的C語(yǔ)言程序
#include <stdio.h>
int main()
{int i = 0;for(i = 0;i<10;++i){printf("%d ",i);}printf("\n");return 0;
}
生產(chǎn)debug版本的可執(zhí)行程序:
gcc test.c -o test_g -g
注意:所有的調(diào)試代碼操作必須在debug版本下執(zhí)行
使用下面的命令可以查看調(diào)試信息:
readelf -S test_g | grep debug
結(jié)果如下:

進(jìn)入gdb
gdb test_g

顯示源代碼
list或l :顯示源代碼,每次顯示10行
list或l 函數(shù)名:列出某個(gè)函數(shù)的源代碼


打斷點(diǎn),查看斷點(diǎn)信息
break或b 行號(hào):在某一行設(shè)置斷點(diǎn)
break或b 函數(shù)名:在某個(gè)函數(shù)開頭設(shè)置斷點(diǎn)

info b:查看斷點(diǎn)信息

運(yùn)行程序
run或r:運(yùn)行程序

查看變量信息
print或p 變量:打印變量值
print或p &變量:打印變量地址

逐語(yǔ)句執(zhí)行
step或s:進(jìn)入函數(shù)調(diào)用

逐過(guò)程執(zhí)行
next或n:單條執(zhí)行(不進(jìn)入函數(shù)調(diào)用)

刪除斷點(diǎn)
delete breakpoints或d:刪除所有斷點(diǎn)
delete breakpoints或d 1:刪除序號(hào)為n的斷點(diǎn)

調(diào)用堆棧
breaktrace或bt:查看各級(jí)函數(shù)調(diào)用及參數(shù)

跟蹤變量
display 變量名:跟蹤查看一個(gè)變量,每次停下來(lái)都顯示它的值
undisplay:取消對(duì)先前設(shè)置的變量的跟蹤


跳轉(zhuǎn)至x行
until X行號(hào):跳至X行

跳轉(zhuǎn)至下一個(gè)斷點(diǎn)
continue或c:從當(dāng)前位置開始連續(xù)而非單步執(zhí)行程序

將一個(gè)指定函數(shù)跑完
finish:執(zhí)行完成一個(gè)函數(shù)就停止