我在使用gdb在emacs中調試Fortran代碼時遇到問題。使用gdb在Emacs中調試Fortran代碼
Gdb啓動正常,程序加載OK並停在第一個斷點上,我在開始main
處設置了第一個斷點。然後當我輸入n
轉到下一行時,程序繼續運行(就像我輸入c
一樣),而不是轉到下一行。爲了解決這個問題,我進一步設置了另一個斷點。打到c
後(在main
的第一個斷點處),代碼跳到並停在後面的斷點處(這正是我想要的)。
但是,此時,我不能再輸入gdb命令,因爲源代碼已移至頂部窗口,並且輸出至底部窗口(而通常所有gdb輸入命令和程序輸出發生在頂部窗口,源代碼在底部遍歷)。所以現在在這個時候,當我輸入gdb命令時,它成爲源代碼的一部分,我無法通過n
和c
等瀏覽它 - 代碼中有一堆n
的c
!
我正在運行Fedora 18和GNU Emacs 24.3.1。另外,要在emacs中運行gdb,它堅持使用開關-i=mi
。在我點擊M-x gdb
後,底部的線條彈出爲:Run gdb (like this): gdb -i=mi ...
。我試圖玩弄開關,如-annotate=3
無濟於事。
它從一個shell(沒有Emacs)工作正常嗎?你使用哪種Fortran編譯器? – Peter
嗨,感謝您的回覆。它在沒有shell的情況下工作正常,從命令行不在emacs中。我正在使用gfortran v。4.8.2。也許我會嘗試另一個編譯器。 – jdeckman
當您直接使用gdb時,您的Emacs是否從與gdb相同的shell啓動? – Peter