本文目的:最近須要linux遠程調試c/c++程序,因此在網上搜了不少教程.但到最後大多不如人意,說到底網上文章一大抄,着實可恨!好比我搜"eclipse 遠程調試 linux" 獲得的確實 "在Windows上用Eclipse遠程調試Linux下的C++程序 實戰windows7 下eclipse 遠程調試 linux Windows 下使用Eclipse CDT 遠程調試Linux C/C++ 程序",我就擦了,這妹的什麼跟什麼啊!沒辦法只好本身動手並根據網上總結一套可用的方法了.linux
本文平臺:本文所講的是linux平臺,固然看完本文後windows平臺的也是同樣的原理,基本上一通百通了.c++
一:windows
linux遠程調試原理( server+client):服務器
1.server:gdbserverapp
命令: gdbserver ip:port appname(進程名)eclipse
一般用下面這個命令:
gdbserver ip:port --attach 22552(進程id).net
2.client:gdbdebug
命令: 終端輸入gdb進去gdb 而後輸入 target remote ip:port調試
3.截圖以下:server
server:
client鏈接上後:
client:
二:linux eclipse下的遠程調試(固然前提是你所要調試的服務器 gdbserver已經開啓了):
1.打開 debug configurations
2.建立一個自定義的 debug設置
3.設置 debug的種類
這裏有三種種類 咱們選擇 gdb dsf manual remote debugging launcher (就是調試的時候 咱們手動設置gdb參數進行調試)
其它兩種的區別就由讀者本身試驗了,這裏並不說明.
設置gdb ip port:
運行調試 選中本身剛剛定義的種類:
調試結果以下:
結束語:調試的時候最好保證gdbserver 和gdb 的版本一致不然可能出現不少無解的問題.注意本身linux服務器的防火牆是否開放了該端口.其實很簡單就是server + client 的調試方式.如讀者有疑問可在評論中發表.歡迎拍磚!