문제

EMACS v22.3.1에서 v23.1.1로 이동하려고 노력하고 있으며 EMAC 내부의 GUD를 사용하여 GDB를 실행하려고 할 때까지 모두 잘 진행되었습니다.

Meta-X GDB를 수행하고 'gdb/my/executable/here'의 명령을 내릴 때 창이 잘 나오지만, 반환 키를 누르면 GDB 프롬프트에서 A 명령을 입력하면 명령을 실행하여 상태가 발생하지 않습니다. 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 모드는 GDB가 주석을 켜고 출력을 올바르게 구문 분석 할 수 있도록 실행해야합니다. MX GDB를 치고 나서 기본 라인 EMACS가 뱉어 내면서 이것에 대해 물었습니다. "--annotate = 3"이 GDB 명령 줄에 포함되어 있는지 확인하고 도움이되는지 확인하십시오.

다른 팁

나는 EMACS-23에서 GDB를 사용했습니다. 편집 (aliased font goodness)이지만 디버깅에 EMACS-22를 사용하는 경우 ... 둘 다 설치할 수 있습니다 ...

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top