如何用GDB除錯程式,如何利用gdb除錯程式之細節

2025-07-06 00:00:14 字數 1686 閱讀 3569

1樓:陽光小天使樂園

用gdb除錯動態鏈結庫 大家都知道在 linux 可以用 gdb 來除錯應用程式,當然前提是用 gcc 編譯程式時要加上 -g 引數。 我這篇文章裡將討論一下用 gdb 來除錯動態鏈結庫的問題。 首先,假設我們準備這樣的乙個動態鏈結庫。

如何利用gdb除錯程式之細節

2樓:網友

gdb是用來除錯二進位程式的,不能除錯python指令碼。 python自帶pdb模組,可以用來除錯自己的指令碼。 使用python -m pdb ,互動方式,命令與gdb類似。

如何使用gdb除錯可執行程式與源程式

3樓:網友

簡單來說,有兩種方式,一種是原始碼debug,即分析原始碼來找出bug位置,一般使用printf()列印出程式執行每一步的資訊,一種是可執行檔案debug

linux中 怎麼使用gdb除錯程式

4樓:匿名使用者

除錯生成的可執行檔案,即。exe檔案。

怎樣用gdb除錯乙個由指令碼檔案啟動的程式

5樓:緣lai如茨

使用gdb

一般來說gdb主要除錯的是c/c++的程式。要除錯c/c++的程式,首先在編譯時,我們必須要把除錯資訊加到可執行檔案中。使用編譯器(cc/gcc/g++)的 -g 引數可以做到這一點。

如:$gcc -g -wall -o hello

g++ g -wall -o hello

如果沒有-g,你將看不見程式的函式名、變數名,所代替的全是執行時的記憶體位址。當你用-g把除錯資訊加入之後,併成功編譯目標**以後,讓我們來看看如何用gdb來除錯他。

啟動gdb的方法有以下幾種:

gdbprogram也就是你的執行檔案,一般在當前目錄下。

gdb core

用gdb同時除錯乙個執行程式和core檔案,core是程式非法執行後core dump後產生的檔案。

gdb如果你的程式是乙個服務程式,那麼你可以指定這個服務程式執行時的程序會自動attach上去,並除錯他。program應該在path環境變數中搜尋得到。

以上三種都是進入gdb環境和載入被除錯程式同時進行的。也可以先進入gdb環境,在載入被除錯程式,方法如下:

在終端輸入:gdb

在gdb環境中:file

這兩步等價於:gdb

symbols

s 從指定檔案中讀取符號表。

se file

從指定檔案中讀取符號表資訊,並把他用在可執行檔案中。

corec 除錯時core dump的core檔案。

directory

gdb怎麼用

6樓:網友

先設計源程式**,然後用gcc編譯器編譯程式,,再進入gdb除錯環境,最後用gdb除錯程式(1、檢視原始檔:在gdb中輸入「1」(list)就可以檢視程式源**。2、設定斷點3、檢視斷點資訊4、執行程式:

可以輸入「r」(run)開始執行程式5、檢視變數值:除錯程式重要手段就是檢視斷點處會自動暫停,此時輸入「p變數名」可以檢視制定變數的值6、單步執行:在斷點處輸入「n」或者「s」可單步執行7、繼續執行程式8、推出gdb環境。

這是在linux下的c

如何使用gdb除錯多程序

follow fork mode 在版linux核心及以後,gdb對使用fork vfork建立子程序的程式提供了follow fork mode選項來支援多程序除錯。follow fork mode的用法為 set follow fork mode parent child parent fork...

如何用excel製作橫道圖,如何利用excel自動生成施工進度計劃橫道圖

用excel製作橫道圖確實有點複雜,其實最方便快捷的是office的project軟體。excel製作橫道圖步驟如下 1 首先製作資料表,a列為序號,b列為專案名稱,c列為工期,d列為開始日期,e列為結束日期 2 選擇資料表中的b1 d6 3 依次單擊 插入 選項卡 推薦的圖表 所有圖表 條形圖 堆...

如何除錯在啟動時iOS應用程式崩潰,只有斷點彙編檔案

重新生成一次,就可以除錯了。ios 應用擴充套件分享 可以打斷點嗎 os x今後的發展方向似乎也逐漸明朗起來。它的操作體驗將和ios越走越近。而這是否意味著蘋果想要把這兩個作業系統融合起來呢?如果這樣的話,如許多人所猜測,蘋果是不是想要徹底革新mac呢?共享越來越多的特性ios和os x之間相互借用的特...