OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5752|回复: 4

分享一下最近Qt调试的历程

[复制链接]

4

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
175
金钱
175
注册时间
2019-10-5
在线时间
31 小时
发表于 2020-3-20 16:12:12 | 显示全部楼层 |阅读模式
先简单说一下自己的情况,本人有一定的linux使用基础,由于项目原因,本人直接跳过驱动开发直接学习Qt的使用,在使用过程中最近踩了几个坑,今天在此总结一下,希望能对广大同行们有所作用。

本人按照原子的教程在虚拟机一步步搭建Qt环境,因为之前安装了高版本的Qt,所以卸载后安装5.5.1版本编译会出现debug文件夹命名报错信息的问题。网上查了一下是由于卸载不完全导致,无奈本人学艺不精,只能重新安装虚拟机,直接安装5.5.1版本,问题解决。

本人已经写好了一个很简陋的界面,按照原子的教程,把生成的可执行文件移植到开发板,运行成功。不过用于调试仍然需要打建调试环境,如果在开发板始终接一根串口线对我们会造成很多不便,于是本人查找了一下Qt远程调试的相关内容,了解了gdb+QTCreater的调试方法。

在使用这种方法远程调试的时候,需要在开发板做好准备,本人在开发板搭建了NFS,并且设置了静态IP地址,具体方式参考了坛友仰望星空之云的帖子:
静态IP:http://www.openedv.com/forum.php?mod=viewthread&tid=302799
NFS环境搭建:http://www.openedv.com/forum.php?mod=viewthread&tid=302907
在设置环境的过程中本人犯了许多低级错误,在此详细说明一下:
1.在按照静态IP设置的方法成功设置后,发现使用XShell远程连接失败,WinSCP访问被拒绝,查找了好多次原因,发现开发板能够ping通主机,然后XShell可以连接到开发板了,百思不得其解,通过查找各种博客尝试,均无法解决,最后发现一条评论,可能换个IP固定就好了。于是本人查了一下网络,果然,手机的IP与开发板的IP冲突了,于是把开发板的IP更换了一下,问题得到解决了。
2.在NFS环境搭建过程,挂载共享文件夹的结果报错,mount.nfs:access denied by server while mounting...,错误出现后,本人按照 http://www.hmjblog.com/system/linux/2998.html 的方式挨个试了一遍,问题得到解决,成功挂载。

开发板环境搭建完成后,需要在虚拟机上的QTCreater添加远程设备,就是在工具→选项→设备,添加设备,如图1:

按照流程添加好设备后,在kit中将imx6的设备类型选择通用设备类型,设备选择刚添加好的设备。

工程建立选择在共享文件夹,写好代码后编译,生成可执行文件,然后在开发板上挂载NFS,在开发板的NFS文件夹可以看到自己的工程文件夹。我的可执行文件命名位helloQtCode,在文件夹路径下运行:
gdbserver 192.168.1.xx:12345 helloQtCode
如果出现Listening on port 12345,在开发板的步骤就可以成功了。
如果报错出现permission denied的问题导致gdbserver退出,则需要给可执行文件添加权限。

在虚拟机的QTCreater中,调试→开始调试→Attach to Running Debug server ,按图2添加内容:

至此可以进行远程调试。

以上就是本人最近踩的坑,都是一些没有注意的细节问题导致,所以在此也希望我的记录能给大家提个醒,步骤正确后关注细节问题,避免踩坑。

图1

图1

图2

图2
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

2

主题

712

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2178
金钱
2178
注册时间
2018-8-27
在线时间
258 小时
发表于 2020-3-20 19:41:46 | 显示全部楼层
谢谢楼主分享,学习了!
森罗万象
回复 支持 反对

使用道具 举报

88

主题

7377

帖子

5

精华

资深版主

Rank: 8Rank: 8

积分
14980
金钱
14980
注册时间
2013-11-13
在线时间
1823 小时
发表于 2020-3-21 10:36:06 | 显示全部楼层
多谢分享,好好学习一下
回复 支持 反对

使用道具 举报

4

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
175
金钱
175
注册时间
2019-10-5
在线时间
31 小时
 楼主| 发表于 2020-3-21 11:11:39 | 显示全部楼层
xiaotaotao 发表于 2020-3-20 19:41
谢谢楼主分享,学习了!

互相学习,我看了您的回复和帖子也学到不少。
回复 支持 反对

使用道具 举报

4

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
175
金钱
175
注册时间
2019-10-5
在线时间
31 小时
 楼主| 发表于 2020-3-21 11:13:13 | 显示全部楼层
zuozhongkai 发表于 2020-3-21 10:36
多谢分享,好好学习一下

谢谢左神!在这我想问左神个问题,使用psplash制作进度条的开机界面,为什么出场的进度条能读到头,而我的进度条读到差一点充满就不动了?我用的也是老版本的psplash。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-25 07:42

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表