只需4步,让Qt远程调试更简单——飞凌技术贴

描述

来源:飞凌嵌入式

 

相信各位工程师小伙伴都有这样的体会——当调试自己的Qt程序时,尤其是在调整界面显示和整体布局时,需要频繁地制作镜像烧写到核心板里来测试Qt程序是否完善,这样的操作既费时又费力。

 

那么,有没有更快捷的方法呢?今天小编就用OKT3-C开发板来为大家介绍如何快速进行Qt远程调试。话不多说,我们直接切入正题。

 

1、修改工程配置

 

Step 1:

打开OKT3-C开发板开发环境中的Qt软件

按照以下顺序依次点击:【工具→选项→构建和运行→Debuggers→Add】,选择gdb调试插件路径下的aarch64-linux-gnu-gdb,并命名gdb路径:

/home/forlinx/work/lichee/brandy/armv8_toolchain/gcc-linaro-aarch64-linux-gnu-4.9-2014.09_linux/bin/aarch64-linux-gnu-gdb

(注:此路径是小编自己环境中的路径,大家自己实际环境前的路径会有所差异)

远程调试

 

Step 2:

依次点击【工具→选项→构建和运行】

再点击Kit,添加一个新的配置,名称自拟即可,设备类型选择【通用Linux设备】,调试器选择刚刚创建好的Debuggers即可。

远程调试

 

Step 3:

点击【工具→选项】

在最左侧选项里选择【设备】,进入【设备】界面后点击Add,添加GenericLinux Device(default for GenericLinux)设备,输入开发板的网络IP以及SSH登录的用户名和密码,再点击Test进行测试,验证连接后配置完成。

远程调试远程调试

 

到这一步,可能会有朋友要问了——“该如何配置OKT3-C开发板的SSH呢?”小编来为大家简单地介绍一下:

 

1.设置账号密码:

adduser+账号

passwd+密码

 

2.修改配置文件:

/etc/ssh/sshd_config

将#PermitRootLoginprohibit-password 修改为PermitRootLogin yes,保存退出

 

3.重启 SSHD:

输入命令 /etc/init.d/S50sshdrestart ,重启SSHD服务

 

4.设置要修改的IP地址:

输入命令:ifconfig eth0 +IP

 

Step 4:

指定目标文件路径

在项目这个地方选择的存放路径要在.pro文件中声明。

远程调试远程调试

 

2、成果展示

按步骤完成以上操作后,我们一起来看最后的成果吧。我们简单搭建一个界面,作为测试使用。

远程调试

 

屏幕显示:

远程调试

 

模拟研发人员进行增删:

远程调试

 

屏幕显示:

远程调试

 

可以看到,我们在Qt工程中做出的修改已经成功的显示在屏幕上了,中间并不需要繁琐的编译烧写,一键运行就可以看到实时的修改,这大大减小了开发人

员的工作量,提高了工作效率。

 

3、经验分享

在进行Qt远程调试的过程中,小编将自己踩过的一些坑和大家分享一下,希望各位工程师小伙伴可以少走弯路。

 

1.“连接错误”问题

远程调试

有时会出现如上图所示的“等待Server响应超时”的错误,不过大家不要慌,再去之前操作过的【Step 3】检查一下,一定要保证这一步的text成功。

 

2.“部署失败”问题

远程调试

出现上图提示问题的原因是,在OKT3-C开发板上已经运行了一个程序,此时再运行一个新的程序就会部署失败。这时,只需要在开发板上杀掉该进程,就可以正确运行Qt程序。

远程调试

 

4、总结

总结一下——通过配置虚拟机中的Qt应用程序、虚拟机网络IP,通过gdb调试和ssh服务,实现在虚拟机中编写Qt程序后,再点击绿色三角形的运行按钮,,即可在开发板中安装运行对应的Qt程序。

 

以上就是小编为大家整理的快速进行Qt远程调试的过程以及一些问题产生的原因,希望能够对大家有帮助。想要了解更多产品信息和技术干货,请百度搜索【飞凌嵌入式】进入飞凌嵌入式官网。

 

作者:李洪亮

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分