linux/windows eclipse远程调试 c/c++程序
本文目的:最近需要linux远程调试c/c++程序,所以在网上搜了很多教程.但到最后大多不如人意,说到底网上文章一大抄,着实可恨!比如我搜"eclipse 远程调试 linux" 得到的确实 "在Windows上用Eclipse远程调试Linux下的C++程序 实战windows7 下eclipse 远程调试 linux Windows 下使用Eclipse CDT 远程调试Linux C/C++ 程序",我就擦了,这妹的什么跟什么啊!没办法只好自己动手并根据网上总结一套可用的方法了.
本文平台:本文所讲的是linux平台,当然看完本文后windows平台的也是一样的原理,基本上一通百通了.
一:
linux远程调试原理( server+client):
1.server:gdbserver
命令: gdbserver ip:port appname(进程名)
通常用下面这个命令:
gdbserver ip:port --attach 22552(进程id)
2.client:gdb
命令: 终端输入gdb进去gdb 然后输入 target remote ip:port
3.截图如下:
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 的调试方式.如读者有疑问可在评论中发表.欢迎拍砖!