通过QT与嵌入式arm-Linux设备联调

主机通过QT与嵌入式arm设备联调(rk3399)

1 环境

1.1 主机环境:ubuntu 20.0

安装了如下库和软件:
1)sudo apt-get update
2)sudo apt-get install build-essential libncurses* lzop net-tools openssh-server vim git fakeroot repo git-core gitk git-gui gcc-arm-linux-gnueabihf u-boot-tools device-tree-compiler gcc-aarch64-linux-gnu
g+±aarch64-linux-gnu mtools parted libudev-dev libusb-1.0-0-dev python-linaro-image-tools linaro-image-tools autoconf autotools-dev libsigsegv2 m4 intltool libdrm-dev curl sed make binutils build-essential gcc g++ bash patch gzip bzip2 perl tar cpio python unzip rsync file bc wget libncurses5 libqt4-dev libglib2.0-dev libgtk2.0-dev libglade2-dev cvs git mercurial rsync openssh-client subversion asciidoc w3m dblatex graphviz python-matplotlib libc6:i386 libssl-dev texinfo liblz4-tool genext2fs
3) sudo dpkg --add-architecture i386
4) sudo apt-get install libncurses5:i386 libstdc++6:i386 zlib1g:i386

QT版本:QT Creator 4.8.0 (QT 5.12)

1.2 ARM板:RK3399

系统内核:linux 4.4.189
交叉编译工具链:aarch64-linux-gnu-gcc/g++

2 配置流程

2.1 配置交叉编译器

1、点击 Qt Creator 的 Tools ->Options->Kits->Compilers, 然后点击 Add ->GCC->C。
2、Name 输入 GCC;
3、Compiler Path 点击 Browse 选择交叉编译器的路径为:/usr/bin/aarch64-linux-gcc
同理添加G++ (aarch64-linux-g++)根据自己的设备情况选择,你需要有对应设备的编译器
在这里插入图片描述

2.2 配置qt versions

在kits中选择Qt Versions选项卡,手动添加版本
在这里插入图片描述

2.3 配置调试器

因为需要联调,所以GDB调试环境由Host端(PC机)和Target端(ARM)两部分组成,Host端推荐使用gdb-multiarch调试工具或arm-linux-gnueabihf,可通过sudo apt-get install gdb-multiarch安装。而Target端需要运行gdbserver,两者之间可通过网口连接。可以从http://ftp.gnu.org/gnu/gdb/网址下载对应版本GDB。多尝试几个版本,我是尝试到8.0.1才最终成功的。下载源码后,解压,进入gdb/gdbserver文件中先配置./configure --target=aarch64-linux --host=aarch64-linux,然后
make CC=aarch64-linux
将生成的gdbserver复制到设备的/usr/bin/下,输入gdbserver --version查看能否运行.
主机端QT的配置如下图所示,手动添加debug
在这里插入图片描述

2.4 添加设备

在这里插入图片描述

2.5 配置kits

在这里插入图片描述
设备选择刚刚添加的设备,debug也要选择上。
将设备端和主机端IP配置好,通过网线连接,重新编译程序,即可开始debug,在设备端直接查看运行效果。

3 总结

每个人的设备及设备工具包都是不一样的,大致流程是这样,细节处还需要自己根据设备不断调整,多尝试。

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fanxinliuchen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值