新闻中心

News

您当前的位置:首页 > 新闻中心

高效开发 | 瑞迅基于瑞芯微系列主板QT移植部署(上)

发布时间:2025-08-11 来源:瑞迅科技 浏览量:193

在嵌入式开发的浪潮中,RK3568平台以其强劲性能成为诸多领域的宠儿,而QT凭借出色的跨平台特性和丰富功能,是界面开发的利器。将 QT5 移植到 RK3568 平台的深度融合,是嵌入式硬件标准化与软件开发模块化的必然趋势,这一技术组合将成为连接 “硬件算力” 与 “用户体验” 的核心纽带,推动更多智能设备从 “功能可用” 迈向 “体验卓越”。


瑞迅RK3568主板移植部署QT5技术实操如下




-----技术分享-----

一、下载QT5源码
下载地址:https://download.qt.io/archive/qt/


二、QT配置和编译
1.解压后进入源码路径。创建一个autoconfig.sh。编辑内容


这里面有两个参数需要注意

-sysroot 指定目标根文件系统位置。这里可以将整个文件系统copy到sysroot指定的目录下,然后修改里面库的符号链接为相对路径,要不然编译过程中会提示无法找到相关库问题


-prefix 指定编译完成后make install时的安装位置,如果系统中指定了sysroot参数,那么安装位置为sysroot+prefix。利用默认的安装位置时可以不用指定prefix参数。


-extprefix 这个参数和prefix 的作用差不多,只不多extprefix 指定的安装路径位置不添加sysroot指定的路径,例如:-extprefix /opt/qt5.12.11-aach64 那么make install后安装位置为编译主机的/opt/qt5.12.11-aach64目录中。


注:make install的具体安装位置可以在配置命令执行完成的log中看到。




2.修改编译工具链
修改文件:qtbase/mkspecs/linux-aarch64-gnu-g++/qmake.conf。这个需要根据自己目标机器的cpu架构进行修改。我用的是arm64的cpu,这里具体用哪个文件下的qmake.conf是和配置中的-xplatform参数对应的。

这里可以修改成交叉编译工具链的绝对路径。


3.添加QT支持OpenGL es2和eglfs库的路劲和头文件



4.执行编译
经过上面的修改后执行下面命令执行配置和编译



如果配置过程中出错,需要先删除config.log和config.cache在重新执行autoconfig.sh进行配置。

配置阶段无误的话下面这几项会被选择


 

三、部署

make install 编译好的QT系统会被安装到extprefix指定的目录中。copy打包这个目录并把它放在目标主机中相同的目录结构下,建议用tar的方式压缩,防止丢失符号链接。

配置环境变量

修改/etc/profile文件添加下面环境变量




QT_QPA_PLATFORM这个环境变量可以不用指定,如果想用eglfs显示可以在运行QT程序的时候增加参数“-platform eglfs”


如果想在sudo命令下正确的利用eglfs插件显示还需要在 /etc/environment中添加如下两行。



另外:如果需要打印更多log可以设置export QT_DEBUG_PLUGINS=1环境变量。


 

四、测试验证

QT源码中有多个例程可以用来验证3D功能。利用编译生成的qmake可以对其进行编译。下面是其中一个例程在机器上的运行效果,另外通过查看GPU的使用率,可以确定硬件加速是否使能。



移植过程中难免会遇到诸多问题,下一期将介绍移植过程中问题解决,欢迎持续关注,共同探讨!