本篇讲解如何使用gdbserver
对目标开发板上的程序进行远程调试。
首先在开发板上安装 gdbserver:
apt install gdbserver
gdbserver用法描述:
Usage: gdbserver [OPTIONS] COMM PROG [ARGS ...]
gdbserver [OPTIONS] --attach COMM PID
gdbserver [OPTIONS] --multi COMM
COMM 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, and
only 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
服务时指定的端口号。
全部0条评论
快来发表一下你的评论吧 !