将Qt动态链接库生成的exe及依赖dll打包方法
来源:互联网 发布:如何配置子域名 编辑:程序博客网 时间:2024/06/05 11:53
将Qt 动态链接生成的exe及依赖dll打包方法
Qt静态编译链接生成的exe文件,不需依赖一堆dll,可以独立运行,发布很方便。但绝大多数用的都是Qt开源版本,如果用静态链接,会有些限制。那有没有办法即能享受静态编译的方便,又不受开源许可的限制呢?方法之一,就是用动态编译,然后把exe和需要的dll整合成一个文件,问题就解决了。
具体步骤:
一,先动态编译链接,生成exe文件
二,找到依赖的dll文件
这里,我们可以用Process Explore来获取所依赖的dll文件
下载:点击打开链接
打开procexp.exe,通过菜单View==》Lower Pane View==》DLLs 勾选,显示dll窗口
这里,我们以test.exe为例,在Qt环境下,将exe运行起来,在ProcessExplor中,找到就可以找到test.exe,选中,在下面就看到依赖的dll了。
系统目录下的,一般不用关心,按Path排序,看Qt目录及mingw目录下的,将这些dll拷贝出来,单独放到一个目录下。
三,打包
打包工具,这里选用Enigma Virtual Box,
下载:http://pan.baidu.com/share/link?shareid=1837762045&uk=673227135
安装,运行
Enter Input File Name中,选择exe
Enter Output File Name,输出文件名称
点Add按钮,将前面准备好的dll文件,添加进来
点Files Options,勾选Enable Files Virtualization和Compress files,OK
最后,点Process,大告成。打包生成的exe文件也可以象静态编译的一样,可以独立运行了。
Qt静态编译链接生成的exe文件,不需依赖一堆dll,可以独立运行,发布很方便。但绝大多数用的都是Qt开源版本,如果用静态链接,会有些限制。那有没有办法即能享受静态编译的方便,又不受开源许可的限制呢?方法之一,就是用动态编译,然后把exe和需要的dll整合成一个文件,问题就解决了。
具体步骤:
一,先动态编译链接,生成exe文件
二,找到依赖的dll文件
这里,我们可以用Process Explore来获取所依赖的dll文件
下载:点击打开链接
打开procexp.exe,通过菜单View==》Lower Pane View==》DLLs
这里,我们以test.exe为例,在Qt环境下,将exe运行起来,在ProcessExplor中,找到就可以找到test.exe,选中,在下面就看到依赖的dll了。
系统目录下的,一般不用关心,按Path排序,看Qt目录及mingw目录下的,将这些dll拷贝出来,单独放到一个目录下。
三,打包
打包工具,这里选用Enigma Virtual Box,
下载:http://pan.baidu.com/share/link?shareid=1837762045&uk=673227135
安装,运行
Enter Input File Name中,选择exe
Enter Output File Name,输出文件名称
点Add按钮,将前面准备好的dll文件,添加进来
点Files Options,勾选Enable Files Virtualization和Compress files,OK
最后,点Process,大告成。打包生成的exe文件也可以象静态编译的一样,可以独立运行了。
阅读全文
1 0
- 将Qt动态链接库生成的exe及依赖dll打包方法
- Qt--将Qt 动态链接生成的exe及依赖dll打包方法
- 将Qt 动态链接生成的exe及依赖dll打包方法
- 将Qt 动态链接生成的exe及依赖dll打包方法
- 将Qt 动态链接生成的exe及依赖dll打包方法
- 将Qt 动态链接生成的exe及依赖dll打包方法
- 将Qt 动态链接生成的exe及依赖dll打包方法
- 将Qt 动态链接生成的exe及依赖dll打包方法
- 将动态编译生成的exe及其依赖的dll打包方法
- 使用WinRar将Qt编译生成的exe和依赖的dll文件打包为一个exe文件的简单方法
- QT生成的exe自动拷贝依赖的dll并打包的方法
- QT生成的exe自动拷贝依赖的dll并打包的方法
- QT生成的exe自动拷贝依赖的dll并打包的方法
- QT生成的exe自动拷贝依赖的dll并打包的方法
- QT5生成的exe自动拷贝依赖的dll并打包的方法
- 用WinRAR将exe与所依赖的dll与资源打包成一个exe
- 使用gcc生成动态链接库dll的方法
- QT之exe和dll打包方法
- Java中long和Long有什么区别(转)
- 八数码问题
- EXTJS——ext.grid.RowExpander模板数据刷新问题
- Mysql乱码解决
- Idea的初步试用
- 将Qt动态链接库生成的exe及依赖dll打包方法
- Hive安装
- CentOS7 + Hadoop2.7.3开发环境搭建
- Proxy动态代理
- 均值滤波、中值滤波的matlab实现
- 测试Boolean
- node权限控制模块node_acl的应用
- 修改Spring Boot启动端口
- lintcode--合并排序数组