[英]Debugging on Linux for Windows Developer
基本上,我已經在Windows機器上完成了基本(新手級別)軟件開發,但是我一直都有MS Visual Studio來幫助我逐步完成調試過程。
但是,現在看來,我將在Linux上運行,因此,為了准備好進行跳躍,我想確保已排列一個工具來幫助我逐步進行代碼和調試。
不幸的是,當我向人們口頭詢問他們如何在Linux上進行調試時,我通常會得到以下回答:“哦,我只寫了一些打印語句。” 我的天啊! 你沒辦法說,但是是的,這就是他們的答案。
由於它在Linux上,並且將在CentOS 32位OS上使用C ++代碼,因此我希望這里是首選的OpenSource解決方案。 因此,我想我要為CentOS Linux上的C ++代碼尋求首選的OpenSource IDE。
感謝您的任何見解和建議。
當然,這是一個好問題,但之前已經完成過:
- https://stackoverflow.com/questions/408418/what-editor-ide-do-you-use-for-c-programming-on-linux-and-why-closed
- https://stackoverflow.com/questions/86676/is-there-a-good-and-free-ide-for-cc-in-linux
- https://stackoverflow.com/questions/149321/what-ide-would-be-good-for-linux-kernel-driver-development
- 適用於Linux的輕量級IDE
- 簡單的GUI IDE?
(來自: https : //stackoverflow.com/questions/579219/best-unix-linux-c-debuger-ide-closed )
幾年前,我從VS轉到了emacs / make類型的環境,但我從未回過頭。
這個想法是使用makefile來處理IDE的項目管理,而我使用emacs + gdb進行編輯和調試。 這需要一段時間才能習慣emacs,但是如果堅持下去,值得付出努力。 啟動emacs后,請按“ Ctrl + H”,然后按“ t”,這將帶您進入教程頁面。
掌握了基礎知識之后,您可以使用與任何IDE /調試器接口類似的方式來調試程序。 我必須承認,即使經過了所有這些時間,我仍然使用初次移至emacs時設置的一組VS鍵映射!
(global-set-key [f7] 'compile) ;; Run the compile command
(global-set-key [f4] 'next-error) ;; The next compile error
(global-set-key [S-f4] 'previous-error) ;; The previous compile error
(global-set-key [f5] 'gdb) ;; Start the debugger
以下將“ VS”鍵映射設置為您可能使用的不同GDB命令:
(add-hook 'gud-mode-hook
'(lambda ()
(define-key (current-local-map)
[f10]
'gud-next)
(define-key (current-local-map)
[f11]
'gud-step)
(define-key (current-local-map)
[\S-f11]
'gud-finish)
(define-key (current-local-map)
[f5]
'gud-cont)
))
通過上面的鍵盤映射,我按了“ f5”鍵,提示我運行gdb(向該命令添加了我想調試的二進制文件)。 加載gdb后,請按“ f5”繼續,“ f10”進入,“ f11”進入,“ shirt + f11”退出。
最后,每次啟動“ gdb”時,它將在您的主目錄中讀取一個名為“ .gdbinit”的文件。 一個不同的StackOverflow問題有這個答案 ,這引起了我對stl視圖的關注。 stl-views是gdb的一組輔助函數,可向您顯示不同類型的STL容器的內容。 鏈接頂部提供了如何使用它的說明。
通常,對於與VS類似(?)的IDE,請使用Eclipse 。
請參閱將Microsoft VS項目移至Eclipse C / C ++開發工具包 -有關將Microsoft Visual Studio C / C ++(MSVC)項目移至Eclipse的簡要分步過程。 它比較並對比了MSVC和Eclipse CDT的好處。
總有GDB 。 用於OSX的XCode在內部使用GDB進行調試。
Valgrind ,它是您的朋友,並且可能使您免於遭受GDB的痛苦。
Anjuta是GNOME的非常出色的IDE。 為了進行調試,它在內部使用GDB。
如果您只想要一個好的調試器,請簽出DDD 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.