buildroot编译qt 5.9.8 arm64版本踩坑

  • 使用的是buildroot2019的版本默认qt5.11.3 使用gcc7.3外置工具链编译,报错gn 需要cpp14版本编译,很奇怪居然是编译宿主的gn,我的ubuntu14 gcc4.8,从gcc4.9开始支持cpp14,后来升级成gcc7 又报错需要高版本的glibc3.4.20,宿主机最高支持3.4.19,遂放弃
  • buildroot默认是不开启qwebegine的,要开启需要drm,udv,xcb,opengl,包括显卡驱动,选的是g开头的那个显卡开源驱动,还需要ffmpeg,默认没集成,需要自己编译,开启了gst-ffmpeg,opencv这些,按理来说都是ffmpeg-based,但还是不行
  • 好在天无绝人之路,找到了buildroot的全量包移植好ffmpeg,成功交叉编译,后续还是报错,所以放弃。突然在网上找到有人编好的qt arm64 5.9.5的版本qwebengine.so,就想着我编一个同版本的qtbase core widgets这样也可以链接,跑个简单浏览器,无奈可能是gcc版本不一样,链接起来还是有问题所以放弃
  • 然后就想,能不能自己编qt arm64版本,反正都是移植到linux系统,只要有工具链,有源码什么都好说,所以下载了5.9.9版本qt,配置交叉编译环境,没想到这么顺,顺的我不敢想象,后面都编完了最让人头疼的chromium,结果最后链接的时候找不到qtdesigner的动态链接库,在网上找了很久都说在qttools下面,但我的就是死活不生成只有对应的pl.doc这些东西,在网上找了好久的方法还是不行,buildroot开启所有的qttools选项还是不行,我看了下自己win64上的qt5.14 人家就有这个qtdesigner的库,差点气死我,遂放弃
  • 转念一想,可能是qt5.9.9的版本特殊呢,于是降了个版本一顿操作,居然编译成功了,差点要哭了
  • 后面就是激动人心的验证时刻
  • 驱动告诉我没有drm,只有linuxfb。我试了下还是不行,于是自己捣鼓了个glfs,基于opengl的,发现可以了,但是一直报错找不到qwebenginewigetprocess,最后在sysroot libexe找到了,妈耶,库的可执行文件原来是这么命名的libexe,真是学到了
  • 最后就是报错没字体 放字体,最后一切都好了,真心累啊
相关推荐
灯澜忆梦4 小时前
GO_并发编程---定时器
开发语言·后端·golang
-银雾鸢尾-4 小时前
C#中的StringBuilder相关方法
开发语言·c#
-银雾鸢尾-5 小时前
C#中结构体与类的区别;抽象类与接口的区别
开发语言·c#
大模型码小白5 小时前
【Python零基础教程】继承、多态与魔法函数:面向对象编程三大核心特性详解
java·大数据·开发语言·人工智能·python·ai编程
段一凡-华北理工大学7 小时前
向量数据库实战:选型、调优与落地~系列文章12:文本分块策略实战:chunk_size 怎么选?重叠多少?
开发语言·数据库·后端·oracle·rust·工业智能体·高炉智能化
Ljwuhe8 小时前
C++——多态
开发语言·c++
心平气和量大福大8 小时前
C#-WPF-Window主窗体
开发语言·c#·wpf
从零开始的代码生活_10 小时前
C++ 继承详解:访问控制、对象模型、菱形继承与设计取舍
开发语言·c++·后端·学习·算法
云小逸10 小时前
【C++ 第七阶段:模板、泛型编程与工程综合详解】
开发语言·c++
Quz10 小时前
QML 信号与槽:直接绑定与跨文件通信
qt·编程语言·设计