2011-04-14 52 views
1

我將ssh轉換爲遠程安裝的linux虛擬機。我使用Vim編寫我的代碼。然而,爲了調試,我使用了通過X11的netbeans,有時可能會非常緩慢。我試過使用gdb,但它是一個效率殺手。我喜歡將鼠標懸停在我的變量上,並獲取它們的值,而不是執行p variable_name,再加上我喜歡查看並瀏覽代碼。有什麼簡單的基於gui的調試工具,我可以使用。我試圖使用clewn http://clewn.sourceforge.net/,但這不工作,因爲它有一個缺少netbeans_intg功能。有沒有其他類似的基於vim gui的調試工具?基於簡單gui的gdb通過ssh進行調試

+0

這並不回答你的問題,作爲'vim'用戶我明白你的痛苦,但'emacs''GUD模式實際上並不壞,並且在終端('emacs -nw')中運行良好。 http://www.emacswiki.org/emacs/GrandUnifiedDebugger – 2011-04-14 16:56:16

回答

1

嗯,我前段時間曾經遇到過你的情況,你可以看看我的問題using gdb with remote sources
首先,netbeans_intg特性的問題與編譯時不支持的vim有關。如果你可以自己重建vim,那麼你可以啓用它。

否則,正如您在我的問題答案中所看到的那樣,您可以利用clewn的remote-vim功能。
簡而言之,你可以擁有一個「本地」vim(也就是在臺式機/筆記本電腦上),它仍然必須使用netbeans_intg支持來構建,但現在它是一個完全控制的vim(即它是「你的「machine),而clewn將在gdb和你的調試對象運行的linux主機上運行。 然後,您可以將源文件保存在臺式機/筆記本電腦上,並在調試過程中使用遠程線形「驅動器」將本地vim「驅動」到正確的源文件。
IOW:clewn會從gdb中獲取信息,確切知道你正在進入哪個文件/行,並連接到遠程vim並告訴它:「嘿,去抓住這個文件並在這條線上顯示它」,突出顯示當前行,斷點等。 這是一個很好的解決方案,當你有遠程部署的系統時,你需要調試它們,而對運行主機的影響最小,並且可能沒有選擇將所有源文件轉移到那裏。 我不知道這是否適合你想要做的事情,但它確實爲我改變了事情。

Hth, Andrea。

1

你可以試試ddd 這是一個gdb的gui,我認爲它比netbeans輕。

cgdb是一個gdb的接口,但它不是一個圖形化的接口。它不提供將鼠標懸停在變量上的可能性,但它會顯示一個包含源代碼的窗口。

1

結賬GDB server。理論上,您應該能夠在服務器模式下在您的linux機器上啓動gdb,並通過您選擇的GUI進行連接。只要該GUI支持Netbeans所做的遠程gdb連接即可。