新闻  |   论坛  |   博客  |   在线研讨会
瑞芯微RK3506开发板必备攻略之Qt应用开发手册(上),触觉智能工控嵌入式方案商
IDO触觉智能 | 2025-04-27 18:01:06    阅读:42   发布文章

Qt是基于C++ 的跨平台开源应用程序开发框架,专注于图形用户界面和非GUI程序的构建。它提供丰富的GUI控件库和高级功能模块(如网络通信、数据库访问、多媒体处理),并采用独特的信号与槽机制实现高效组件通信。支持OpenGL、Vulkan等图形接口,以及针对嵌入式系统的EGLFS无窗口模式和LinuxFB帧缓冲等,开发者可根据目标平台选择灵活的渲染策略。本文基于触觉智能RK3506星闪开发板Ubuntu系统进行演示,配套RK3506核心板(3核A7@1.5GHz+M0@200MHz多核异构)宽温级59元/业级68元,一片也是含税批量价。


Ubuntu SDK安装与环境搭建

SDK安装

网盘下载路径:Linux>4.软件资料>QT-SDK/Ubuntu

资料链接请进入触觉智能官网,或联系客服13423856106获取。


注意:

1. QT-SDK 采用交叉编译,所以要在 X86_64 电脑上使用 SDK,不要将 SDK 下载到板子上。

2. 编译环境请使用 Ubuntu22.04(真机或 docker 容器),如果使用其他版本可能导致编译出错。

3. 不要在虚拟机共享文件夹以及非英文目录存放、解压QT-SDK。

下载SDK后,首先校验MD5值,命令如下:

$ md5sum rk3506-ubuntu22_qt5-sdk.tar.gz

解压QT-SDK,命令如下:

$ sudo tar -zxvf rk3506-ubuntu22_qt5-sdk.tar.gz -C ./

交叉编译环境搭建

进入qt sdk目录下,执行install_sdk.sh脚本,进行安装和搭建交叉编译环境,具体如下:

$ cd ./rk3506-ubuntu22_qt5-sdk

$ sudo ./install_sdk.sh

$ ./env.sh

$ source ~/.bashrc

搭建环境后,查看qmake版本和交叉编译工具链版本:


$ arm-none-linux-gnueabihf-gcc -v

Using built-in specs.

COLLECT_GCC=arm-none-linux-gnueabihf-gcc

COLLECT_LTO_WRAPPER=/home/industio/evb3506/arm-gnu-toolchain-11.3.rel1-x86_64-arm-none-linux-gnueabihf/bin/../libexec/gcc/arm-none-linux-gnueabihf/11.3.1/lto-wrapper

Target: arm-none-linux-gnueabihf

Configured with: /data/jenkins/workspace/GNU-toolchain/arm-11/src/gcc/configure --target=arm-none-linux-gnueabihf --prefix= --with-sysroot=/arm-none-linux-gnueabihf/libc --with-build-sysroot=/data/jenkins/workspace/GNU-toolchain/arm-11/build-arm-none-linux-gnueabihf/install//arm-none-linux-gnueabihf/libc --with-bugurl=https://bugs.linaro.org/ --enable-gnu-indirect-function --enable-shared --disable-libssp --disable-libmudflap --enable-checking=release --enable-languages=c,c++,fortran --with-gmp=/data/jenkins/workspace/GNU-toolchain/arm-11/build-arm-none-linux-gnueabihf/host-tools --with-mpfr=/data/jenkins/workspace/GNU-toolchain/arm-11/build-arm-none-linux-gnueabihf/host-tools --with-mpc=/data/jenkins/workspace/GNU-toolchain/arm-11/build-arm-none-linux-gnueabihf/host-tools --with-isl=/data/jenkins/workspace/GNU-toolchain/arm-11/build-arm-none-linux-gnueabihf/host-tools --with-arch=armv7-a --with-fpu=neon --with-float=hard --with-mode=thumb --with-arch=armv7-a --with-pkgversion='Arm GNU Toolchain 11.3.Rel1'

Thread model: posix

Supported LTO compression algorithms: zlib

gcc version 11.3.1 20220712 (Arm GNU Toolchain 11.3.Rel1)


$ qmake -v

QMake version 3.1

Using Qt version 5.15.8 in /opt/rk3506/rk3506_ubuntu22_5.15/ext/lib

注意:根据安装路径的不同,导致qmake和arm-none-linux-gnueabihf-gcc的路径也是不同的。


Qt交叉编译


Qt源码demo

将Qt demo 解压到当前路径下,命令如下:

$ mkdir -p ./qt-demo && tar -xvf moveblocks.tar.gz -C ./qt-demo

$ cd qt-demo

$ ls

main.cpp  moveblocks.pro


交叉编译

命令如下:

$ qmake ./

$ make

$ make install

$ ls

main.cpp  Makefile  moveblocks  moveblocks.pro

由此可见编译后生成moveblocks可执行程序,可以通过ssh等方式将可执行程序传到开发板中运行。


Qt验证

将demo传到开发板上,命令如下:

$ adb push Z:\moveblocks /tmp

运行demo,命令如下:

$ chmod  a+x /tmp/moveblocks

$ /tmp/moveblocks

结果展示:

1745748052116.jpg

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客