beaglebone black狗板,交叉编译Qt5(eglfs)

  1. 下载buildroot-2023.023.7版本

make beaglebone_qt5_defconfig

然后编译,出现错误大多数是因为下载不了包,用bing搜索找到放到对应的dl目录下,最终完成编译。

备注:用系统默认配置,不要参考网上的,网上的很多都是从0开始,可能内核都版本都不对,都不带opengl es,狗板的GPU驱动,这个花费了我很长时间,最终发现默认的配置,就可以支持GPU驱动了。也是第一次玩buildroot

  1. 烧写

编译最终会输出这么多文件,主要用sdcard.img

am335x-boneblack.dtb am335x-bone.dtb am335x-evm.dtb boot.vfat rootfs.ext2 sdcard.img zImage

am335x-boneblack-wireless.dtb am335x-bonegreen.dtb am335x-evmsk.dtb extlinux rootfs.ext4 u-boot.img

am335x-boneblue.dtb am335x-bonegreen-wireless.dtb arm-buildroot-linux-gnueabihf_sdk-buildroot.tar.gz MLO rootfs.tar uEnv.txt

  1. 烧写到U盘

sudo dd if=output/images/sdcard.img of=/dev/sde (这里根据dmesg替换成你的U盘)

  1. 插上SD卡,然后重启狗板
  1. 运行Qt efls需要先配置一下

export QT_QPA_EGLFS_KMS_CONFIG=/etc/qt5/eglfs_kms_cfg.json

export QT_QPA_PLATFORM=eglfs

export QT_QPA_EGLFS_INTEGRATION=none

设置这三个环境变量后,启动一个Qt的demo看看,正常应该是可以的。

/usr/lib/qt/examples/opengl/hellowindow/hellowindow

6.提取sdk

在build root里面执行make sdk

备注:为什么要用sdk,不直接用交叉编译工具链编译,试了,没搞成功。

7.解压并且设置环境变量

用cmake 配合sdk来编译demo,这里挑一个多媒体的来练习

编写CMakeLists.txt,用gpt先搞个模版出来,然后修改

设置sysroot,以及添加头文件和so的路径

如果出现问题,请检查sysroot下面是否有对应的文件名find_package需要再这里找到对应的名称。

这样cmake就能找到库,好像也能找到include和lib的路径。但是我这里也还是手动添加了。

8,编译

在源码路径下面建立一个build目录,然后cd进去,执行cmake ..

然后直接make

可能遇到的问题,虚函数定义,加上下面这个,具体也没去研究

检查编译的最终结果是否是arm的可执行文件

成功,这样就可以拿到板子上去运行了

相关推荐
梦想出海-Phoebe11 小时前
GitHub 新手入门:账号注册与 SSH Key 配置教程
运维·ssh·github
国际云,接待11 小时前
云服务器 WebSocket 空闲后频繁断开:查 Nginx 超时、心跳与负载均衡,再评估扩容
服务器·websocket·nginx
时间售卖铺11 小时前
MySQL存储过程流程控制全解析
运维·数据库·mysql·云原生
Linux界最忧郁之人11 小时前
OpenStack Victoria双节点实战|Packstack一键部署(CentOS‑Stream‑8)+华为云ECS实操
linux·运维·服务器·centos·华为云·openstack
DevNote_11 小时前
1C1G 服务器从零配置实录(附完整命令)
linux·运维·服务器·javascript·adb·ssh·gmssh
haermosi11 小时前
Ubuntu 下 Flameshot 截图一直闪屏,已找到问题并解决
linux·ubuntu·gnome·问题排查·flameshot·linux 使用记录
进击的荆棘11 小时前
Linux系统——进程信号之保存和捕捉信号
linux·运维·服务器·信号处理·信号
开开心心就好11 小时前
免安装PDF盖章工具,透明度和位置可调
运维·服务器·前端·javascript·pdf·ocr·1024程序员节
whyutianict_vv13 小时前
云计算 HCIE 认证体系解析:HCIA/HCIP/HCIE 三级科目与知识边界
linux·运维·云计算
0+11120 小时前
Linux --从 poll 到 epoll多路转接
linux·服务器·1024程序员节