簡體   English   中英

在Emacs 23中使用gdb

[英]Using gdb in Emacs 23

我正試圖從Emacs v22.3.1遷移到v23.1.1並且一切順利,直到我嘗試使用Emacs中的gud運行gdb。

當我執行meta-x gdb並命令'gdb / my / executable / here'時,窗口顯示正常,但是當我按下返回鍵執行命令時在gdb提示符下鍵入命令時,沒有任何反應,狀態bar說'Debugger:run',結果從未顯示過。 我可以輸入'ctrl-c ctrl-c'來終止命令並再次獲得'(gdb)'提示,但是另一個命令也以同樣的方式失敗。

這是Linux Centos v4 32bit上的gdb v6.8。

還有其他人遇到過這個問題嗎? 什么是最好的方法?

我從一個提示符(而不是gud)附加到gdb並得到了這個堆棧跟蹤:

#0  0x00fd77a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x0020108d in poll () from /lib/tls/libc.so.6
#2  0x08111a07 in gdb_do_one_event (data=0x0) at event-loop.c:759
#3  0x0810f05f in catch_errors (func=0x8111970 <gdb_do_one_event>, func_args=0x0, errstring=0x8236200 "", mask=6) at exceptions.c:513
#4  0x080c25e7 in tui_command_loop (data=0x0) at .././gdb/tui/tui-interp.c:153
#5  0x0810f2cf in current_interp_command_loop () at interps.c:276
#6  0x0807f0b3 in captured_command_loop (data=0x0) at .././gdb/main.c:99
#7  0x0810f05f in catch_errors (func=0x807f0a8 <captured_command_loop>, func_args=0x0, errstring=0x8236200 "", mask=6) at exceptions.c:513
#8  0x0807f7eb in captured_main (data=0xbff00a60) at .././gdb/main.c:882
#9  0x0810f05f in catch_errors (func=0x807f0e0 <captured_main>, func_args=0xbff00a60, errstring=0x8236200 "", mask=6) at exceptions.c:513
#10 0x08080027 in gdb_main (args=0x7fffffff) at .././gdb/main.c:891
#11 0x0807f0a1 in main (argc=-4, argv=0xfffffffc) at gdb.c:33
#12 0x00153df3 in __libc_start_main () from /lib/tls/libc.so.6
#13 0x0807efdd in _start ()

這是一個瘋狂的猜測:

Emacs的gud-mode要求gdb在打開注釋的情況下運行,以便它可以正確解析輸出。 當我在點擊Mx gdb后重寫默認行emacs spits out時,我一直都是這樣做的。 確保gdb命令行中包含“--annotate = 3”,看看是否有幫助。

我在emacs-23中使用了gdb ...或者至少,我已經比你更遠......當我嘗試它時,堆棧窗口不會更新...我最終做的是使用emacs-23用於編輯(對於抗鋸齒字體的好處),但使用emacs-22進行調試...你可以安裝兩個...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM