qt5程序打包含qml

Qt 官方开发环境使用的动态链接库方式,在发布生成的exe程序时,需要复制一大堆 dll,如果自己去复制dll,很可能丢三落四,导致exe在别的电脑里无法正常运行。

因此 Qt 官方开发环境里自带了一个工具:windeployqt.exe。

编译出可运行程序,编译工具不限,可以是qtcreater或者visual studio或者其他。

  1. 将可运行程序和非qt相关的库拷贝到干净的文件夹下,如:

  2. 运行qt环境,我是使用的osgeo4w64的环境,启动后开启Qt5的环境,如下:

  3. 运行windeployqt,如下:

说明: --qmldir D:workspacegisstore_client_cppgisstore_client_cppxclientqml xclient.exe
--qmldir制定开发包内的qml文件所在的目录,我的qml所在的目录为 D:workspacegisstore_client_cppgisstore_client_cppxclientqml,xclient.exe为要打包的程序。命令运行结果如下:

现在,xclient.exe的文件夹下多了一些文件夹和库文件,现在我们运行我们的程序就没有问题了。

其他参考文章

https://blog.csdn.net/sinat_36264666/article/details/73305712
https://stackoverflow.com/questions/35195687/proper-way-to-deploy-qml-applications-on-windows

原文地址:https://www.cnblogs.com/xueye9/p/9685389.html