|
前言 随着国产处理器生态的快速发展,龙芯平台的嵌入式应用开发需求日益增长。Qt 作为跨平台 GUI 开发框架,在嵌入式 Linux 领域应用广泛。本文基于米联客龙芯 2K2000 开发板,从零开始讲解 LoongArch 架构下 Qt 交叉编译环境的完整搭建流程,以及 Qt Creator 开发环境配置,帮助开发者快速上手龙芯平台的 Qt 应用开发。 一、开发环境准备1.1 虚拟机环境部署镜像下载:uisrc-ubuntu22.04 默认开机密码:root 导入方式:解压后双击.vmx文件即可添加至 VMware 1.2 交叉编译工具链安装龙芯平台使用 LoongOS SDK 提供的交叉编译工具链,支持 loongarch64 架构: 1. 将LoongOS-toolchain.sh脚本复制到虚拟机内 2. 执行安装命令: sudo ./LoongOS-toolchain.sh 3. 安装过程中按提示输入y并回车,完成后工具链默认安在/opt/LoongOS/v0.1/目录 1.3 环境变量加载每次编译前需加载交叉编译环境变量: cd /opt/LoongOS/v0.1/ source environment-setup-loongarch64-Loongson-linux 加载后系统会自动配置好CC、CXX、PATH等环境变量,gcc、g++、qmake等工具即可直接调用。 二、Qt 命令行交叉编译实战2.1 编译流程说明以 Qt 自带的analogclock示例为例,完整编译步骤如下: 1. 进入工程目录 cd ~/test/analogclock 2. 生成Makefile qmake 3. 移除不兼容的编译参数(关键步骤) sed -i 's/-mtune=la264//g' Makefile 4. 执行编译 make -j4 2.2 关键注意事项-mtune=la264参数是针对龙芯 LA264 内核的优化选项,在部分工具链版本中可能不被支持,导致编译报错。通过sed命令批量移除该参数是通用解决方案。 编译完成后会生成可执行文件analogclock,该文件为 loongarch64 架构,只能在龙芯开发板上运行。 2.3 板端运行验证1. 将编译好的程序文件夹拷贝至 U 盘 2. U 盘插入开发板 USB 接口,复制程序到本地目录 3. 添加执行权限并运行: chmod +x analogclock ./analogclock 三、Qt Creator 交叉开发环境配置命令行编译适合脚本化构建,日常开发推荐使用 Qt Creator IDE,配置步骤如下: 3.1 Qt Creator 安装1. 下载 Qt 在线安装包:qt-online-installer-linux-x64-online.run 2. 添加执行权限并运行: chmod +x qt-online-installer-linux-x64-online.run ./qt-online-installer-linux-x64-online.run 1. 在设置中将镜像源改为中科大源:https://mirrors.ustc.edu.cn/qt/,提升下载速度 2. 按向导完成安装,建议安装 Qt 6.x 版本 3.2 交叉编译套件配置打开 Qt Creator,进入Edit -> Preferences -> Build & Run,依次配置以下选项: (1)添加 Qt Version· 切换到Qt Versions标签页,点击Add · qmake 路径选择: /opt/LoongOS/v0.1/sysroots/x86_64-loongsonsdk-linux/usr/bin/qmake · 命名为LA-QMAKE (2)添加交叉编译器· 切换到Compilers标签页,手动添加 GCC 编译器 · C 编译器路径: /opt/LoongOS/v0.1/sysroots/x86_64-loongsonsdk-linux/usr/bin/loongarch64-Loongson-linux/loongarch64-Loongson-linux-gcc C++ 编译器路径: /opt/LoongOS/v0.1/sysroots/x86_64-loongsonsdk-linux/usr/bin/loongarch64-Loongson-linux/loongarch64-Loongson-linux-g++ · ABI 选择:loongarch-linux-generic-elf-64bit (3)构建 Kit 配置· 切换到Kits标签页,新建构建套件 · 配置核心参数: o Compiler:选择刚才添加的 LA-GCC o Qt version:选择 LA-QMAKE o Sysroot:设置为/opt/LoongOS/v0.1/sysroots/loongarch64-Loongson-linux · 保存并设为可用 四、跨平台调试技巧4.1 先 PC 后板卡的开发模式Qt 的跨平台特性允许我们采用 "PC 调试 + 板卡运行" 的开发模式: 1. 在 x86 环境下使用 Desktop 套件开发调试界面逻辑 2. 功能验证无误后切换到龙芯交叉编译套件 3. 编译生成的二进制文件部署到开发板运行 该模式可大幅提升开发效率,避免频繁烧写和板端调试的繁琐。 4.2 局限性说明涉及硬件操作的功能无法在 PC 端模拟调试,例如: · I2C/SPI 外设读写 · 摄像头、显示屏等硬件设备操作 · 平台专属接口调用 此类功能仍需在板端进行实际调试。 总结本文完整介绍了龙芯 2K2000 平台 Qt 交叉编译环境的搭建流程,涵盖工具链安装、命令行编译、Qt Creator 配置三个核心环节。掌握这套开发流程后,开发者可以快速将现有 Qt 应用迁移到 LoongArch 架构,助力国产平台的应用生态建设。
|