赞
踩
转载:https://blog.51cto.com/2678482/1616826
Windows 7, X64 平台
比较烦琐的方式是,运行Qt*.exe 程序,提示缺少 *.dll, 将缺少的*.dll拷贝到目录中,感觉比较麻烦还容易出错!网上大半都是这样文档,想想 QT 应该有解决这此笨办法的工具(windeployqt),
Qt 5程序在Windows上的发布 将所有依赖的库整理好,放在目录中运行,打包! (缺点:存在多余的库)
使用 Process Explore / depends22_x64 等工具 获取所有的依赖库 (缺点:太麻烦了)
windeployqt 找出依赖,并自动拷贝到当前目录
通过 Qt "D:\Qt\Qt5.4.0\5.4\msvc2013_64\bin\windeployqt.exe" 命令找出依赖的库
windeployqt QtWebApp.exe
- D:\qtcode\build-QtWebApp-Desktop_Qt_5_4_0_MSVC2013_64bit-Release\tmp\QtWebApp.ex
- e 64 bit, release executable
- Direct dependencies: Qt5Core Qt5Network Qt5Sql
- All dependencies : Qt5Core Qt5Network Qt5Sql
- To be deployed : Qt5Core Qt5Network Qt5Sql
- Warning: Cannot find Visual Studio installation directory, VCINSTALLDIR is not s
- et.
- Updating icuin53.dll.
- Updating icuuc53.dll.
- Updating icudt53.dll.
- Updating Qt5Core.dll.
- Updating Qt5Network.dll.
- Updating Qt5Sql.dll.
- Creating directory bearer.
- Updating qgenericbearer.dll.
- Updating qnativewifibearer.dll.
- Creating directory sqldrivers.
- Updating qsqlite.dll.
- Updating qsqlmysql.dll.
- Updating qsqloci.dll.
- Updating qsqlodbc.dll.
- Updating qsqlpsql.dll.
所依赖的 Qt 库都会自动拷贝到当录下!
注意:
Warning: Cannot find Visual Studio installation directory, VCINSTALLDIR is not s
et
直接用 "VS2013 开发人员命令提示" 命令行去,执行刚才的 windeployqt QtWebApp.exe,会将 "vcredist_x64.exe"(vc x64 运行最少环境)程序放入当前目录。
建议:将所用到的库与开发环境的路径都放入 PATH 环境变量中设置好,这样使用 windeployqt 都能找到对应的 dll.当然使用对应的 工具的 "命令行工具" 也是可以的!
Qt绿色版的程序就这样生成完成!
软件打包(NSIS)
NSIS菜单 -- 编译器 -- VNISEdit(编译器环境)
图片如下
文件-- 新建脚本-向导 -- 下一步 -- 下一步到
授权文件就不折腾了!
下一步
选项中 "c:\path\to\file\AppMainExe.exe", c:\path\to\file\Example.file 都删除
接来下,点击上方的 "树型" 按钮
将“绿色版”的目录填入"选择的目录", 选中"包含子目录","单独添加每个文件" -- 确定 -- 下一步
完成,NSIS 自动编译,生成打包后的文件!
输出的信息:
- 已处理 1 个文件, 写入输出:
- 添加插件初始化函数... 完成!
- 处理页面... 完成!
- 移除未用的资源... 完成!
- 生成语言表...完成!
- 生成卸载程序...完成!
- 输出: "F:\Program Files\NSIS\xxxx\Setup.exe"
- 安装程序:4 个页面 (256 字节), 3 个区段 (需要 2) (3144 字节), 325 条指令 (9100 字节), 176 个字串 (2509 字节), 1 个语言表 (282 字节).
- 卸载程序: 2 个页面 (128 字节), 1 个区段 (1048 字节), 69 条指令 (1932 字节), 93 个字串 (1561 字节), 1 个语言表 (226 字节).
- 数据模块优化器储存了 14592 字节 (~0.0%).
- 使用 lzma 压缩.
- EXE 头部大小: 46592 / 34816 字节
- 安装代码: 2852 / 15667 字节
- 安装数据: 15898195 / 40645353 字节
- 卸载代码 + 数据: 9689 / 15249 字节
- CRC (0xD8BCB363): 4 / 4 字节
- 总计大小: 15957332 / 40711089 字节 (39.1%)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。