QtQuick,qt3d在windows下打包单一exe(待详细)
来源:互联网 发布:花呗只能在淘宝用吗 编辑:程序博客网 时间:2024/05/21 19:50
前提基于Qt4.8.0,Qt3D 1.0,其实版本不同只是依赖的dll不同,思路是一样的。
1. 依赖文件的问题,如果在QML中没有引用QtWebkit,Qt3d等那么依赖的库仅仅是bin下的dll,但是如果引用了,就要依次在根目录下仿照引用的目录结构建立文件夹,比如Qt3D的引用:
Qt3D/qmldir
Qt3D/qthreedqmlplugind.dll
qmldir等文件直接到~\4.8.0\imports\Qt3D下复制出来就可以,还有
~\4.8.0\plugins\sceneformats
~\4.8.0\plugins\imageformats
如果用到了例子特效什么的还要加上
~\4.8.0\imports\Qt\labs\particles
2. 如何发现
两款软件:
Dependency Walker
打开软件,把执行程序拖进去即可。
能找到最小的程序依赖,多数情况下不全。
Process Explorer
看到这款软件真有相见恨晚的感觉。
在本地执行待打包的程序,同时执行这款软件,在进程中找到程序的进程,查看dll依赖,会看到程序所有的依赖dll,尽管有些非必要或根本就不需要。
4. 说下本人打包方法
在本机上建个VMware局域网,包含不同版本的纯净系统,每个节点上建个共享目录放待打包的文件。
在开发机上执行远程目录中的exe程序,程序正常执行后,在Process Explorer中看依赖关系,如果dll指向远程目录说明已经包含了,如果指向本机,尤其是指向Qt的安装目录,八成是缺失的依赖。
4. 打包单一exe
方法很多,比如:MoleBox Pro,Enigma Virtual Box。
以前用前者打包python时不能运行,不知新版有没有改善。
用法都很简单,可以参考下文的链接。
5. 参考链接:
1. 官网的说明:
http://doc.qt.digia.com/qt/deployment-windows.html
2. 国外一篇详细的介绍:
http://www.johanpaul.com/blog/2011/07/deploying-qt-and-qt-quick-applications-on-windows/
3. 程序依赖性,虚拟化工具打包
http://4137613.blog.51cto.com/4127613/834075
- QtQuick,qt3d在windows下打包单一exe(待详细)
- electron在windows下打包exe
- Python程序windows下打包成exe
- windows下 Qt5的exe打包运行
- Pyinstaller 打包python 到exe 在windows下免python环境运行python
- Pyinstaller 打包python 到exe 在windows下免python环境运行python
- .exe文件打包发布(windows)
- Node.js Electron windows下安装与打包成 exe
- Windows下Python.py打包为.exe文件
- java成打包成exe-在任意windows上运行
- 在windows下安装nvm-setup.exe
- Qt3d
- qt程序打包成单一文件EXE (一)
- Win7下安装Qt3D库
- (待研究1--暂存)ALLJOYN 在windows下的编译与使用
- qt 在windows下打包应用程序
- 打包windows程序为exe
- 打包windows程序为exe
- 利用JqPlot画饼图
- Asp.net中实现ImageButton的鼠标移人(出)图片变换
- jqplot 饼图
- HDU 1210
- SQL PASS西雅图之行——University of Washington篇
- QtQuick,qt3d在windows下打包单一exe(待详细)
- hdu 1754 线段树
- normalizing the database.
- 比较难 如何手工 或编程实现 调用 X.509 certificate 签名的 https WCF Service
- LZO 2.06 使用帮助和介绍
- 所理解Java中的堆和栈
- Write a program to print the fibonacci series sum upto a particular no. using recursion.
- Bitwise add/Multipy
- Xlib: connection to ":0.0" refused by server解决方法