gdb除錯問題,gdb除錯時候遇到問題

2025-07-07 01:25:10 字數 2256 閱讀 8189

1樓:吉祥二進位

提示什麼, 如果是同乙個檔案,乙個能除錯,另乙個不能除錯,最大的原因是許可權問題, 這個你用gdb載入的時候,按r 執行後,一般會有提示的。 另外也可能檔案損壞了。。你最好再 編譯一下,如果是直接 attach進行的除錯,則極有可能是許可權問題。

2樓:海獅

set 功能較多,簡易修改變數時總加上var(gdb) p n

gdb) set n=5

on" or "off" expected.

gdb) set var n=5

gdb) p n

gdb除錯時候遇到問題

3樓:網友

(gdb)s

不能執行該命令而選擇的執行緒正在執行。

gdb)bt

目標是執行。

gdb)資訊的執行緒。

1過程22614(執行)

翻譯了一下,不知道你還能不能知道問題所在。

linux gdb除錯問題

4樓:燼

出現此錯誤的原因主要是生成的除錯資訊是dawnfs4,而支援的是 dawnfs2

這個問題其實是編譯環境的問題,可以更改gcc和gdb的版本,這需要去尋找合適的版本。當然也可以給gcc增加編譯引數,使其生成dawnfs2除錯資訊,主要引數為-gdwarf-2 -gstrict-dwarf,做法如下:

在。bashrc中加入alias gcc='gcc -gdwarf-2 -gstrict-dwarf',重啟終端使其生效。

這樣gdb可以使用,也不會出現上面的錯誤。

gdb無法除錯

5樓:匿名使用者

提示什麼, 如果是同乙個檔案,乙個能除錯,另乙個不能除錯,最大的原因是許可權問題, 這個你用gdb載入的時候,按r 執行後,一般會有提示的。 另外也可能檔案損壞了。。你最好再 編譯一下,如果是直接 attach進行的除錯,則極有可能是許可權問題。

gdb除錯的問題,請教大神!

6樓:網友

接著執行了 file 命令,把程式和符號念激雀都清理掉了。

但前面一次操作不好理解,gdb myapp後,list 命令沒有符號,但可以執行,難道第一次鉛弊出的 myapp 沒加仔早 -g ,沒產生除錯符號。

如何gdb除錯乙個執行中的程序

7樓:網友

第一步 編譯乙個死迴圈程式。

file name

#include

#include

#include

void getmem(void **p, int num)void test(void)

int main(void)

return 0;

我們可以看出,這個程式就是malloc一段記憶體空間,用來供strcpy使用,由於只是除錯一下,就沒有在test程式中加上一些關於strcpy的正確性判斷語句。

函式的正常退出的情況是i==1,但是程式執行過程中根本無法使i==1成立。i的變數的值將會在使用gdb時用到。

開始編譯。gcc -g

得用gdb,加上-g還是需要的。生成的可執行檔案為第二步 讓gdb連線到正在執行的程序上去首先執行程式。

/明顯的,是乙個死迴圈。

重新開乙個shell

ps -u我的機器的運**況如下所示:

8樓:臨危不俱

例如程式的可執行檔名稱為dome

gdb dome

進入gdb對話方塊。你要除錯程式的某一段**,在進入那段**前打上乙個斷點。

break filename:linenum然後執行程式。

run此時程式開始執行,如果是gui介面,你可以在介面進行操作,當這些操作呼叫斷點後的**時,程式會停下來,這是你可以輸入命令進行除錯了,next 2 //執行下面兩行**。

使用gdb除錯的時候,為什麼看不到變數的值等問題

9樓:

首先,你要確保vs處於除錯狀態(因為狀態和除錯狀態的選單以及工具欄會不同)。

然後選擇選單【除錯】-【視窗】裡面的【區域性變數】、【自動視窗】和【監視】-【監視 n】都可以顯示變數的值,只是顯示的變數會不同。

區域性變數】和【自動視窗】都是vs自動選擇要顯示的變數;

監視 n】就是要認為指定要顯示的表示式。

如何使用gdb除錯多程序

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

ubuntu下用gdb除錯程式,run的時候說我許可權不夠,這個該怎麼處理。

在你打的命令前加上sudo sudo後面有個空格的,提公升使用者的許可權 然後會提示你需要輸入密碼。最好不要隨便用sudo命令,萬一有些地方用了不該用的,後果不堪設想。遇到命令許可權問題,你可以嘗試下。gdb除錯run之後說許可權不夠 中可能 編譯命令 gcc g o aaa 除錯命令 gdb q aaa ...

怎樣用gdb除錯使用大量STL Container的C 程式

gdb中print方法並不能直接列印stl容器中儲存的變數,其實只要這個檔案儲存為 gdbinit 就可以使用它提供的方法方便除錯容器。data type gdb command std vectorpvector stl variable std listplist stl variable t ...