Qt 官方开发环境使用的动态链接库方式,在发布生成的exe程序时,需要复制一大堆 dll,如果自己去复制dll,很可能丢三落四,导致exe在别的电脑里无法正常运行。
因此 Qt 官方开发环境里自带了一个工具:windeployqt.exe。
编译出可运行程序,编译工具不限,可以是qtcreater或者visual studio或者其他。
-
将可运行程序和非qt相关的库拷贝到干净的文件夹下,如:
-
运行qt环境,我是使用的osgeo4w64的环境,启动后开启Qt5的环境,如下:
-
运行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