Qt gdbserver + gdb-multiarch 监控调试ARM板

1、首先我们是编译gdbserver,查找arm板系统上有没有可用的gdbserver,可以在根目录通过find -name gdbserver 查找,或者自己编译自己的gdbserver ,编译方法是

    环境说明:

    ubuntu16.4  x86_64
    ununtu交叉编译环境
    IMX6UL嵌入式平台

    编译gdbserver,现有的gdb都是基于X86平台下的,如果需要在IMX6UL平台下运行,则需要下载gdb源码并进行交叉编译后方可在IMX6UL平台下运行。操作如下:

    下载gdb源码:http://ftp.gnu.org/gnu/gdb/ ,我下载的是最新版本8.1
    拷贝源码到Linux平台下,解压 :tar -xvf gdb-8.1.tar.xz
    cd进入gdb-8.1目录,配置gdb:./configure --host=arm-poky-linux-gnueabi,make开始编译,不太漫长的等待。。。微笑微笑微笑(gdb编译失败了,不纠结。我不需要gdb,我只需要gdbserver),进入gdb/gdbserver编译gdbserver。就是make了。
    在gdb/gdbserver目录下得到gdbserver在将其拷贝到ARM板IMUX6UL环境下的/usr/bin/(FTP、TFTP随便了。。。)
    在ARM终端下输入修改gdbserver权限然后查看gdbserver能否能正常运行;

root@myd-y6ul14x14:~# gdbserver --version
GNU gdbserver (GDB) 8.1
Copyright (C) 2018 Free Software Foundation, Inc.
gdbserver is free software, covered by the GNU General Public License.
This gdbserver was configured as "arm-poky-linux-gnueabi"

2、安装gdb-multiarch:

这个简单了,sudo apt-get install gdb-multiarch安装完成,运行如下:

联网直接在虚拟机上获取gdb-multiarch,安装后在/usr/bin/目录下查看到有gdb-multiarch文件;

3、接下来是配置QtCreater

                                                             图1 添加Debuggers

接下来在自己的交叉编译5.9.3构建下选择图1中创建的gdb_multiarch。

                                 图2 交叉编译5.9.3选择gdb_multiarch

接下来配置主机(也就是ARM板)设备IP相关;我的Arm 板IP 10.181.34.1 用户名yz密码yz; 个人台式机IP 10.181.34.141.

3、启动远程调试

a)交叉编译自己的Qt程序,必须选用Debug模式,比如我自己用的交叉编译是5.9.3Debug,如下图;

 全编译后,将生成的hmi考到ARM板上;

b)我使用的是带有桌面系统的,在ARM板上打开终端输入 gdbserver 10.181.34.1:8888  hmi

观察终端显示在监听;

c)配置Qt远程debug如下选择连接远程debug server;

 

接下来即可;

部分参考链接:https://blog.csdn.net/ying1feng23/article/details/80563702

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值