Windows10 ARM64 QtWidget工程构建:从环境配置到交叉编译实战

张开发
2026/4/22 18:51:55 15 分钟阅读

分享文章

Windows10 ARM64 QtWidget工程构建:从环境配置到交叉编译实战
1. 为什么要在Windows10上构建ARM64 QtWidget工程最近几年ARM架构的处理器越来越火从手机到嵌入式设备再到现在的笔记本电脑ARM芯片凭借低功耗高性能的特点正在快速占领市场。像TI的AM62X这类嵌入式平台很多开发者习惯在Windows环境下工作但最终程序要跑在ARM架构的设备上。这就引出了一个很实际的问题能不能直接在Windows电脑上开发ARM平台的Qt程序答案是肯定的。虽然Linux环境下有现成的SDK可以直接用但在Windows上通过交叉编译的方式同样能搞定。我最近刚完成了一个AM62X平台的项目整个过程踩了不少坑也积累了一些经验。下面就把从环境配置到成功编译的完整流程分享给大家手把手教你如何在Windows10上搭建ARM64 Qt开发环境。2. 准备工作工具链与软件安装2.1 必备工具清单在开始之前我们需要准备以下工具Windows10系统建议版本1903以上Qt Creator 5.14.2其他版本也可但配置可能略有不同交叉编译工具链推荐gcc-arm-10.3-2021.07make工具3.81版本即可预编译好的qmake工具这里特别说明一下交叉编译工具链的选择。我测试过多个版本最终选择了gcc-arm-10.3这个版本主要是因为它对ARM64的支持比较完善而且和Qt5.14.2的兼容性很好。工具链下载解压后建议放在没有中文和空格的路径下比如直接放在C盘根目录。2.2 安装与配置细节安装Qt Creator没什么特别的一路next就行。但有几个关键点需要注意安装时建议勾选所有组件避免后续缺少依赖安装完成后先不要急着打开我们需要先配置工具链把make工具的可执行文件路径添加到系统环境变量PATH中交叉编译工具链解压后你会看到一堆可执行文件。其中最重要的是aarch64-none-linux-gnu-g这是我们后面配置编译器时要用的。我建议把工具链的bin目录路径记下来后面配置Qt Creator时会用到。3. Qt Creator配置详解3.1 配置编译器打开Qt Creator后首先进入工具-选项-Kits有些版本可能在编辑-参数里。这里我们需要配置三个关键部分编译器、Qt版本和构建套件。先来配置编译器点击编译器选项卡选择添加-GCC-C在路径处浏览选择交叉编译工具链中的g就是前面提到的aarch64-none-linux-gnu-g给编译器起个有意义的名字比如ARM64 GCC 10.33.2 配置Qt版本这一步很关键需要使用预编译好的qmake点击Qt Versions选项卡点击添加按钮浏览选择预编译好的qmake可执行文件给它起个名字比如Qt 5.14.2 ARM64这里有个常见坑点如果直接使用官方安装的qmake会报各种奇怪错误。必须使用专门为ARM64交叉编译配置过的qmake。我提供的资源包里有已经配置好的版本解压后直接使用即可。3.3 配置构建套件最后把前面配置的内容组合起来点击Kits选项卡点击添加按钮设置套件名称比如ARM64 Build选择刚才配置的编译器和Qt版本设备类型选择通用Linux设备Sysroot留空即可确保ABI设置正确应该是arm64架构配置完成后建议先点击Apply保存然后关闭Qt Creator重新打开确保配置生效。4. 创建并编译QtWidget工程4.1 新建项目现在可以开始创建我们的第一个ARM64 QtWidget工程了文件-新建文件或项目选择Application-Qt Widgets Application在Build System选择qmake不要选CMake选择我们刚才配置的ARM64套件完成项目创建向导创建完成后你会看到标准的Qt Widget项目结构。这里有个小技巧可以先选择Desktop套件创建项目然后再切换成ARM64套件这样可以在Windows上先验证UI设计。4.2 编译与部署项目创建完成后右键点击项目选择构建第一次构建可能会比较慢耐心等待构建成功后在编译输出目录会生成可执行文件把这个文件拷贝到ARM64设备上运行测试如果遇到libgcc_s_dw2-1.dll缺失的错误可以把Qt安装目录下的对应dll文件一般在bin目录里复制到可执行文件同级目录或者添加到系统环境变量PATH中。5. 常见问题与解决方案5.1 编译错误排查在实际操作中可能会遇到各种编译错误。我总结了几种常见情况找不到编译器错误检查工具链路径是否正确环境变量是否设置Qt头文件找不到检查qmake配置是否正确特别是Qt版本路径链接错误检查是否使用了正确的库文件ARM64设备可能需要额外的库5.2 性能优化建议当项目越来越大时编译速度可能会变慢。可以考虑使用ccache加速编译在.pro文件中合理配置编译选项只编译必要的模块5.3 调试技巧在ARM设备上调试Qt程序有些特殊可以使用gdbserver进行远程调试在Qt Creator中配置远程调试环境合理使用qDebug输出调试信息经过这些步骤你应该能在Windows10上顺利开发和编译ARM64平台的QtWidget应用了。虽然过程有些复杂但一旦环境配置完成后续开发就和其他Qt项目没什么区别了。我在实际项目中用这套环境开发了一个工业控制界面运行在AM62X平台上非常稳定。

更多文章