Linux开发板RK3566-Buildroot移植Qt5详细步骤【保姆级】

本教程使用的开发板是【立创·泰山派RK3566开发板】

地址:https://lckfb.com/project/detail/lctspi-2g-16g?param=baseInfo

开源原理图和PCB,资料免费!!感谢立创开发板开源!!

Buildroot 是一个用于嵌入式 Linux 系统的工具,它可以帮助你构建定制化的 Linux 系统镜像。Buildroot 支持集成 Qt5 到你的嵌入式 Linux 系统中,并且可以帮助你构建包含 Qt5 应用程序的根文件系统。

一、编译SDK

我们进入SDK目录下

这是我的SDK目录

输入以下命令选择泰山派的板级配置rootfs环境变量

./build.sh lunch && export RK_ROOTFS_SYSTEM=buildroot

然后我们开始编译(时间可能有点长,看电脑配置)

注意:要确保所有必要软件都安装了。详细可以看泰山派资料【编译SDK】

./build.sh all

以下情况就是编译完成了

二、加载环境变量

我们要执行 buildroot/build/envsetup.sh 脚本,将其中定义的环境变量、函数等加载到当前 shell 环境中。

注意:我们当前的操作还是在linuxSDK根目录下,不需要进入buildroot目录。

source buildroot/build/envsetup.sh

选择:65

三、menuconfig菜单添加Qt支持

在SDK根目录下,输入以下命令进行配置

make menuconfig

进入以下界面:

方向键 ↑↓ 移动选中 Target packages

敲回车进入

方向键 ↑↓ 移动选中 Graphic libraries and applications (graphic/text)

敲回车进入

进入之后,方向键 ↑↓ 翻动找到 Qt5,按 键盘y键 选中,前面出现 [*] 标志之后,就可以回车进入了。

进入之后将里面的内容修改为下方图片的样子。

[*] Qt5  --->
        [*] gui module
            [*] widgets module
        [*] fontconfig support
        [*] GIF support
        [*] JPEG support
        [*] PNG support
        [*] syslog support
        [*] Enable Tslib support
        [*] qt5serialport
        [*] qt5virtualkeyboard
            (en_GB) language layouts 

保存之后(方向键左右选择Save敲回车即可保存),我们可以选择 Exit 返回上一个界面了。

退出 menuconfig 菜单

我们在主菜单也选择Exit 就能退出 menuconfig 菜单了(回到命令行)

四、保存配置

我们保存退出menuconfig菜单后,在SDK根目录下输入以下命令将刚刚保存的配置生效为默认配置

make savedefconfig

五、编译

开始整体编译,因为之前已经编译过了,所以速度会快得多。

./build.sh all

注意:在编译的过程中,会自动下载刚刚我们添加过的模块,例如Qt5会被自动下载。

如果出现下列报错或者下载过慢,请直接在你的windows电脑上下载文件,然后将文件放在buildroot文件夹下的dl文件夹中

(复制地址到浏览器搜索框)

这种是虚拟机打不开网站所导致的:

完成之后,重新输入 ./build.sh all 即可继续编译。

出现下面这种情况就是编译成功了。

六、测试

成功后,我们在/buildroot/output/build路径下会找到qt5base-5.15.2文件夹。

/buildroot/output/rockchip_rk3566/target 路径下搜索也能找到 qt 相关文件夹和文件,这一点很重要!

sudo find * -name "*qt*"

七、生成镜像

一切没有问题了,在SDK根目录下输入以下命令生成镜像。

./mkfirmware.sh

如果只想烧录rootfs.img镜像,这时候就可以去SDK根目录下的rockdev文件夹中寻找rootfs.img烧录即可。

如果想要烧录完整镜像,则可以继续运行下面的命令,即可生成完整的系统镜像(update.img)。

./build.sh updateimg

八、烧录镜像

我们生成的镜像都在SDK目录下的rockdev文件夹中,里面就是全部的镜像。

九、编译Qt

将镜像烧录进开发板之后,开发板Qt环境就已经就绪了,接下来就可以开始编译Qt的项目了。

使用buildroot文件中的qmake工具编译Qt项目。

位置在:linuxSDK目录下的/buildroot/output/rockchip_rk3566/build/qt5base-5.15.2/bin/qmake

接下来将项目文件复制到虚拟机中,进行交叉编译,任意位置都可。

我们先要将.user文件删除,因为这是Windows环境下的用户配置:

然后我们使用cd命令进入项目文件夹中,在里输入以下命令利用qmake生成Makefile文件:

sudo /home/lipeng/share/TaiShanPai/linuxSDK/buildroot/output/rockchip_rk3566/build/qt5base-5.15.2/bin/qmake ClockTop.pro

注意:这里的qmake地址是我自己电脑的绝对路径,仿照我的路径大家自己找一下,不难找。

运行qmake之后,生成了一个Makefile文件。

然后我们make一下,生成可执行程序。

sudo make

成功之后会在项目文件夹中生成一个可执行文件:

给这个文件加权限。

sudo chmod 777 ClockTop

十、开发板运行Qt程序

我们将虚拟机中的ClockTop文件复制到我们的开发板中,可以使用U盘或者其他工具。

复制到泰山派的文件就是图片中框起来。

复制完成后,我们就可以直接在泰山派中直接运行Qt程序了。

./ClockTop

或者

这里的 --platform linuxfb 参数告诉 ClockTop 使用 Linux Framebuffer (linuxfb)作为显示平台。

./ClockTop --platform linuxfb

Rockchip RK3566是一款由Rockchip推出的高性能应用处理器,其集成了四核ARM Cortex-A55 CPU和ARM Mali-G52 GPU。在移植U-Boot 2023.04时,我们需要考虑以下几个方面的工作: 1. 了解RK3566芯片的硬件架构和技术规格,包括处理器核心、内存控制器、外设接口等。这将有助于理解U-Boot如何与硬件交互,并进行相应的配置。 2. 下载并准备U-Boot 2023.04的源代码。在Rockchip官方网站或开源社区中可以找到最新的U-Boot源代码。将其下载并解压到开发机上。 3. 设置交叉编译环境。因为U-Boot是一个跨平台的项目,所以需要配置适合RK3566的交叉编译器,确保能够正确编译U-Boot源代码。 4. 配置U-Boot。根据RK3566的硬件架构和技术规格,需要进行相应的配置,包括处理器、内存、外设等设置。这些设置在U-Boot的配置文件中进行,可以根据需求进行修改。 5. 编译U-Boot。在配置好U-Boot后,使用交叉编译器编译U-Boot源代码。编译完成后,将生成的U-Boot二进制文件烧录到RK3566的启动设备上,如eMMC或SD卡。 6. 测试U-Boot。将准备好的启动设备插入RK3566开发板中,根据开发板的启动方式,进入U-Boot命令行界面。在命令行界面中可以进行各种操作和调试,如加载内核、启动操作系统等。 7. 调试和优化。在移植和测试U-Boot过程中,可能会出现一些问题和不稳定的情况。需要通过调试和优化来解决这些问题,确保U-Boot的正常运行和稳定性。 总之,移植U-Boot 2023.04到Rockchip RK3566需要了解芯片的硬件架构和技术规格,配置和编译U-Boot源代码,进行测试和调试。这样可以确保U-Boot能够与RK3566正常交互,并为后续的操作系统加载和启动提供基础支持。
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TheFiles

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值