用gdbserver除錯共享庫 改進版

2021-08-22 11:13:59 字數 1274 閱讀 8785

用gdbserver除錯共享庫(改進版)

:執行gdbserver,並記住列印出來的pid,後面用它來獲得程序的maps檔案。

gdbserver localhost:2222 networkmanager &

process networkmanager created; pid = 24753

listening on port 2222

在客戶端(或者主機端)上

:執行gdb,載入可執行檔案的符號檔案,在主函式處設定斷點,並執行到這裡。gdbserver剛執行起來時,共享庫還沒有載入,所以要執行到main函式才能進行後面的操作。

lixianjing@localhost server>gdb

remote debugging using localhost:2222

0x00293840 in ?? ()

(gdb) symbol-file networkmanager

reading symbols from /home/lixianjing/work/groupware/network-

anager/server/networkmanager...done.

(gdb) b main

breakpoint 1 at 0x804a565: file main.c, line 16.

(gdb) c

continuing.

breakpoint 1, main (argc=cannot access memory at address 0xa396940a

) at main.c:16

16 '

.tmp

.log

>

baseaddr_so

.tmp

.log

baseaddr_so

.tmp

.log

|'begin

'>

offset

.tmp

.log

join

offset

.tmp

.log

baseaddr_so

.tmp

.log

>

offset_baseaddr_so

.tmp

.log

offset_baseaddr_so

.tmp

.log

rm-f

*.tmp

.log

一直沒有找到比較完美的方法,若哪位高手知道,請不吝賜教。

~~end~~

android 通過gdbserver 除錯c

有些事真的很煩鎖,但是又不得不做 環境 ubuntu12.04 ndkr9 android sdk android 4.2.2 盒子,已root 過程 1 c 編寫程式 2 ndk build ndk debug 1 強制生成除錯資訊 3 adb push gdbserver system bin ...

gdbserver除錯cgi小結

這兩天題目中所述問題糾結的不輕,欣慰的是終於解決,在此記錄一下。一 gdbserver移植 環境pc linux version 2.6.32 431.17.1.el6.x86 64 gcc version 4.4.7 arm linux gcc version 4.4.3 arm linux ve...

gdb除錯及gdbserver遠端除錯

gdb偵錯程式是一款gnu開發組織並發布的unix linux下的程式除錯工具,具有強大的功能,足有與visual stido媲美,當然友好的介面是沒法相比的,呵呵。開始編譯程式將除錯資訊包含進去,gdb偵錯程式執行在shell中輸入gdb就好,也可以輸入gdb filename,filename是...