Linux系统调试篇——GDBSERVER远程调试
文章目录
- 安装 GDBSERVER
- gdbserver 用法
- 具体步骤
本篇讲解如何使用gdbserver
对目标开发板上的程序进行远程调试。
安装 GDBSERVER
首先在开发板上安装 gdbserver:
apt install gdbserver
gdbserver 用法
gdbserver用法描述:
Usage: gdbserver [OPTIONS] COMM PROG [ARGS ...]gdbserver [OPTIONS] --attach COMM PIDgdbserver [OPTIONS] --multi COMMCOMM may either be a tty device (for serial debugging),
HOST:PORT to listen for a TCP connection, or '-' or 'stdio' to use
stdin/stdout of gdbserver.
PROG is the executable program. ARGS are arguments passed to inferior.
PID is the process ID to attach to, when --attach is specified.Operating modes:--attach Attach to running process PID.--multi Start server without a specific program, andonly quit when explicitly commanded.--once Exit after the first connection has closed.--help Print this message and then exit.--version Display version information and exit.
使用gdbserver
很简单,主要就是先在开发板上开启gdbserver
,然后宿主机运行gdb
远程连接到gdbserver
。
具体步骤
一:在目标开发板上启动 gdbserver 服务
要进行gdb调试,首先要在目标开发板上启动gdbserver
服务。在gdbserver
所在目录下输入命令:
gdbserver :12345 helloworld
此时gdbserver
监听端口号12345
,并等待客户端连接。这里的端口号是自己指定的,helloworld
是你要调试的程序。
二:在宿主机上运行 GDB:
宿主机通常就是在你的Linux虚拟机上,然后找到开发板对应工具链下的gdb,然后运行:
riscv64-linux-gnu-gdb helloworld(gdb) target remote 192.168.1.4:12345
192.168.1.4
是开发板的ip
地址,12345
是开发板启动gdbserver
服务时指定的端口号。