关于 RK3588的Qt串口库崩溃以及linux系统LD_LIBRARY_PATH无效的 解决方法

若该文为原创文章,转载请注明原文出处
本文章博客地址:https://hpzwl.blog.csdn.net/article/details/133995912

红胖子网络科技博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中…

瑞芯微开发专栏


问题

  目标板系统的库里面没有带Qt串口库,需要使用串口,由此引出一些列Qt版本,LD_LIBRARY_PATH无效,无法启动应用等等奇葩问题的解决。


尝试1:Qt5.15串口库顶替Qt5.12串口库(没有办法的办法)

  串口适配,调用rootfs的qt5.15库(使用qt5.12的串口库,系统未打qt5.15的库)
  在这里插入图片描述
  运行失败。

尝试2:使用LD_LIBARARY_PATH更改依赖库

  将编译器的qt运行环境引入:
  在这里插入图片描述
  在这里插入图片描述
  然后启动用脚本:
  在这里插入图片描述
  应用无法起来。
  这里就很奇怪,一般来说没问题。


推断

  wayland是可视化界面,所以他肯定使用了Qt,所以Qt5.15的应用在支持Qt5.12的上面不行,这里只是推断,因为文件系统不是我们做的,并且文件系统前后存在以下问题:
  1.shell脚本中使用cd dirname相关指令是可以切换当前目录的,此系统无效,确认路径无误且打印出来了。
  2.文件系统中有2块样板,其中一块样板LD_LIBRARY_PATH也无效:
  在这里插入图片描述

  在这里插入图片描述
  其中/root/qt5.12.10-aarch64是交叉编译的Qt版本,且引入了LD_LIBRARY_PTH。
  还有一些其他问题,都是想办法绕开解决了,但是实际上这块并没有根本上解决,存在一些未来不可预期的问题。


解决

  1.串口库绕开QT串口,花了一天高度封装了一个linux串口,完美适配Qt。
  2.LD_LIBRARY_PATH,为什么1块板子无效1块板子有效不清楚,后面刷的有效就行。
  3.LD_LIBRARY_PATH为什么Qt起不来,这个问题只能是推断的,协调让方案商重新编译一个Qt5.15的版本与系统匹配,不过方案貌似编译的是Qt5.15.12,而板子是5.15.2,即使说是大小版本库兼容,但是以实际测i是为准(实际5.12大小版本就出现过有一次跑久了崩溃,改成同一个子版本没问题,但是查这个问题几个人花了接近一个月定位)


特别说明

  开发板方案商合作估摸算了一下带本次这家是十几家了,这是唯一一家出现各种从未见过的问题,本身一套开发虚拟机就解决的问题硬生生耗了大半个月,选择合作方案商非常重要,否则会导致项目延期等各种问题,需要考察实际的技术人员的技术水平,而不是公司做过,不少公司初期做过后来公司做大相关技术人员跑了也有,可以这么说,当然非技术也很难分辨,技术很容易分辨但是有些也只是表明功夫,只能降低几率。


对选择合作方的建议

  1.优先考虑朋友介绍的公司,但是需要走正规流程考察或者从不同渠道验证是否有这个能力?(PS:做事牛逼的干不过会吹牛逼的,这是社会问题,所以很多不能看表面,朋友介绍的相对坑少点,当然也许比不过别人口碑起来实干的,具体情况具体分析)
  2.方案公司是否看重外协的项目,是否当回事?(PS:公司状况,是否技术人员参与,是否有研发项目管理,是否之前做过,必须做过类似的且提供对应的相关资料目录来确认,比如这次这家就没有做过主板提供二次QT开发,qt上都卡了半个月约,成熟方案商也就半天一天的事,下下来虚拟机和解压摆好硬件的时间)
  3.方案公司是否有足够的技术能力承接,是否直接能对接技术管理负责人?(PS:不能光听管理介绍,做过多少项目,多少人,毕竟还能出现甲方去方案公司完全对接不到技术负责人的情况)
  4.方案公司是否及时回复信息?(PS:提出问题都是知道了解好,但是很难突进,没有明确回复,没有实质性进展,因为这种项目一般牵扯多个供应商,一个掉链子就会导致其他几个都在消耗人员成本时间成本)
  以上只是建议,吃一堑长一智,想完全避免也是不现实的,只能加大几率避免,最起码方案公司技术能力是有,但是可能没有投入太多人力,因为虽然是一个业wu,但是大公司大客户多啊,小客户十几万挠痒痒,我们可以理解,但是不能接受,应慎重考虑是否合作。


总结

  社会太复杂,一山还比一山高,城市套路太深,红胖子只想把事情又快又好的做好,然后下一个,不是纯为赚钱,而是想在有限的时间内做更多的事,而不是重复基础问题。
  对于资深多年多个方向的老手来说,基础的一些常规问题就是基础问题,看多N次解决1-2次就够了,总结好规律,跟普通开发协作还得解释为什么这样做,解释了还不信,
  类似这种问题,红胖子客户多次碰到,所以随着几年合作深入,基本我的方案都是一次到位问题最少速度较快的,直接想把硬件方案给我的也有一些,甚至直接让我司提篮子,但是我司无法去担保别人的硬件是否成熟,信任是需要相匹配的能力是赶出来的,我们暂时没有一款成熟的自研板子(正在研制中…),也没有兴趣赚提篮子的钱。


若该文为原创文章,转载请注明原文出处
本文章博客地址:https://hpzwl.blog.csdn.net/article/details/133995912

猜你喜欢

转载自blog.csdn.net/qq21497936/article/details/133995912
今日推荐