查看: 615|回复: 0

[经验] 飞凌嵌入式ElfBoard ELF 1板卡-使用QT Creator进行远程调试

[复制链接]

该用户从未签到

发表于 2024-4-30 09:23:38 | 显示全部楼层 |阅读模式
分享到:
本帖最后由 eefocus_3944881 于 2024-4-30 09:25 编辑

Qt Creator是一个跨平台的集成开发环境(IDE),主要用于开发基于Qt框架的应用程序。它提供了强大的远程调试功能,开发人员可以在自己的本地环境中执行调试操作,而无需直接在远程设备上进行操作。Qt Creator会通过网络连接到远程设备,将调试信息传输回本地环境。下面将介绍如何在ELF 1开发环境中配置Qt Creator进行远程调试。
QT Creator新建工程

1.执行环境变量
elf@ubuntu:~$ . /opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi

2.打开qtcreator
elf@ubuntu:~$ /opt/Qt5.6.2/Tools/QtCreator/bin/qtcreator &

3.新建工程
单击“文件”,选择“新建文件或项目”,按下图进行配置:
图片1.png
图片2.png
图片3.png
图片4.png
图片5.png

4.编译
(1)单击左侧“项目”按钮,选择编译配置为arm-gcc-imx6ull的方式,取消选中Shadow build:
图片6.png
(2)单击“构建”,选择“构建所有项目”,可以在/home/elf/work/helloworld目录下看到编译生成的应用程序:
图片7.png
(3)把helloworld二进制文件拷贝到ELF 1开发板的/home/root路径下进行测试:
root@ELF1:~# cp /run/media/sda1/helloworld .
root@ELF1:~# sync
root@ELF1:~# export DISPLAY=:0.0
root@ELF1:~# ./helloworld
图片8.png

QT Creator远程调试
1.保证开发环境与开发板之间能够互相ping通
(1)将开发环境设置为桥接模式,单击“虚拟机”,选择“设置”,单击“网络适配器”,网络连接设置为桥接模式:
图片9.png
(2)设置开发环境ip:
图片25.png
图片11.png
开发环境的网络配置完成。

(3)设置ELF 1开发板ip:
root@ELF1:~# ifconfig eth0 192.168.2.99

(4)ELF 1开发板ping开发环境,确保网络连接正常:
root@ELF1:~# ping 192.168.2.101
图片12.png

2.ELF 1开发板运行gdbserver
root@ELF1:~# gdbserver 192.168.2.101:9900 ./helloworld
图片13.png

3.开发环境中配置Qt Creator
(1)单击“工具”,选择“选项”,单击“设备”,单击“添加”按钮,按下图进行配置:
图片14.png
图片15.png
图片16.png
完成配置后出现如下界面,表示连接成功:
图片17.png
(2)单击“Apply”,再单击“OK”按钮完成配置:
图片18.png
(3)单击“工具”,选择“选项”,单击“构建和运行”,单击“构建套件”,单击“添加”按钮,按下图进行配置,单击“Apply”,单击“OK”按钮,完成配置:
图片19.png
(4)单击“调试”,选择“开始调试”,单击“Attach to Running Debug Server”:
图片20.png
按下图进行配置:
图片21.png
(5)调试
图片22.png
至此,大家就可以在代码中进行设置断点、查看变量、单步执行等操作啦!这种便利的远程调试功能使得开发者能够更加高效地调试远程设备上的应用程序,加速了开发过程,提高了代码质量和稳定性。

图片10.png
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /4 下一条



手机版|小黑屋|与非网

GMT+8, 2024-12-18 23:56 , Processed in 0.121563 second(s), 17 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.