一、环境
远程主机(机器B):192.168.2.2
本地主机(机器A):192.168.2.1
要调试的程序代码在机器A上。
二、软件安装
在所有机器上安装gdb,ubuntu上可通过以下方式安装:
apt-get install gdb
三、程序编译
如果要使用gdb调试程序,程序编译时必须加上-g参数,如下所示:
g++ -g hello.cpp -o hello
四、调试本地进程
1、gdb
2、attach pid(进程的pid可以通过“ps -aux | grep 进程名字”查看)
3、设置断点
4、开始调试
五、远程调试
1、在远程主机(机器B)上执行:
(1)调试远程程序:gdbserver 机器A:端口 程序名字
(2)调试远程进程:gdbserver 机器A:端口 --attach pid
注:端口号可以任意指定,一般大于1024的端口号。
2、在本地主机(机器A)上执行:
gdb
tartget remote 远程主机的IP:端口(这个端口和步骤1的端口是对应的)
3、设置断点开始调试