在这里我主要描述的是windows下的场景:
编译 Release 版本
- 打开 Qt Creator,在左侧 “项目” 面板中,将构建套件(Kit)切换为 Release
- 编译完成后,在项目的build-xxx-Release目录下找到.exe可执行文件(比如myapp.exe
用 windeployqt 拷贝依赖库(这是qt自带的)
- 点开安装qt的根目录,在以版本号命名的文件夹下找到自己使用的编译工具链
- 进入工具链的bin文件目录下,确定有windeployqt.exe应用程序文件
- 在bin目录下唤出cmd,在弹出的窗口里边输入windeployqt.exe
- 然后再将编译的exe可执行文件拖入到窗口,即可完成打包
windeployqt D:\\MyQtApp\\myapp.exe
- 如果程序用到了 Qt 的额外模块(如 Qt Network、Qt Sql),需要显式指定:
windeployqt myapp.exe –qmldir . # 若用到QML
windeployqt myapp.exe –sql-drivers # 若用到数据库
直接双击文件夹里的.exe文件,如果能正常运行,说明依赖已拷贝完成;如果提示缺少libgcc_s_seh-1.dll、libstdc+±6.dll等,把 Qt 安装目录下mingw81_64\\bin里的这些文件拷贝到当前文件夹即可(因为这几个文件可能需要管理员权限才能进行复制)
命令行工具要匹配:Windows 下必须用 Qt 对应的 MinGW/MSVC 命令行,否则windeployqt会失效




