gdb: Don‘t know how to run. Try “help target“.

本文介绍如何使用GDB进行远程调试,包括设置目标机器、指定本地调试文件及远程执行文件等步骤,并展示了完整的命令示例。

gdb 远程调试的一个问题:
Don't know how to run.  Try "help target".
它在抱怨不知道怎么跑,目标是什么. 你需要为它指定target remote 或target extended-remote

例如:
target extended-remote 192.168.1.136:1234

指明target 是某IP的某端口, 就是说它的target 是远程机上的某程序.

完整示例如下: 各phrase 之间是用空格分割的.
target extended-remote 192.168.1.136:1234            //设置target, 为远程192.168.1.136:1234端口. 本地元远程来通讯.
file ../build-tcpserv03-arm-debug/server                  //设置本地调试的程序,gdb 会调用这个程序分析
set remote exec-file server                                               //设置远程对应的调试程序,当建立连接后,会通知对方启动对应程序,远程gdbserver会调用这个程序
b main                                                                                       // 设置断点
run                                                                                              // 执行

extended-remote 选项往往与 gdbserver 的 --multi 选项相对应,是说gdbserver 有一次调试多个程序的能力.

远程端可以如下运行(我的是arm 上的gdbserver 程序)

在嵌入式arm上, server 执行文件目录下,运行:

gdbserver --multi :1234                                       // 启动gdbserver, 并且在1234端口上监听

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值