You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux环境开发的Qt应用如何部署到Windows平台?

Linux开发Qt应用后部署到Windows的可行性及操作方案

答案是完全可行。你在Linux设备上找不到windeployqt是正常情况:该工具是Windows版Qt构建套件自带的依赖收集工具,你本机安装的Linux版Qt默认仅携带linuxdeployqt,自然没有对应Windows平台的工具。


所需额外准备资源

  • 与开发时版本完全一致的Windows目标架构Qt交叉编译套件:Linux环境下优先选择MinGW版本的交叉编译套件,无需适配MSVC的闭源编译环境,操作成本更低
  • 对应目标架构的MinGW交叉编译工具链:版本需要和Qt交叉编译套件使用的编译器版本完全匹配,避免出现编译或运行兼容问题
  • 项目依赖的所有第三方库的Windows编译版本:不可直接复用Linux下的.so库,需单独准备对应Windows平台的.dll文件
  • (可选)Wine运行环境:用于在Linux下模拟运行Windows版windeployqt,降低手动收集依赖的成本

具体操作步骤

  • 第一步交叉编译项目:调用交叉编译套件中的qmake(注意不可使用本机Linux版Qt的qmake)解析项目文件,再执行make完成编译,得到Windows平台可识别的.exe可执行文件
  • 第二步收集运行依赖,两种方案二选一即可:
    • 手动收集:将编译得到的exe放到空目录中,用交叉编译工具链自带的mingw-objdump工具逐次排查exe及依赖库的关联dll,同时按Qt的目录结构复制对应的Qt插件(如platforms、imageformats等目录)、MinGW运行时库、第三方库到对应位置
    • 自动收集:在Wine环境中安装对应版本的Windows版Qt,直接通过Wine调用Windows版windeployqt,参数指向你交叉编译得到的exe路径,工具会自动将所有依赖库、插件、资源收集到exe所在目录
  • 第三步验证打包结果:将完整的打包目录传输到Windows设备上,直接运行exe验证功能正常即可。如果需要制作单文件安装包,可在Linux下用nsis工具生成,也可以传输到Windows设备上用对应安装包制作工具处理

注意事项

  • 如果项目使用了QML开发,需要额外收集QtQuick对应的模块和插件,漏装会导致程序启动后界面空白
  • 所有放入打包目录的库文件必须是Windows平台的编译版本,不可混入Linux平台的库文件

内容的提问来源于stack exchange,提问作者siya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 01:36:07