qt5程序打包含qml

时间:2023-03-09 20:09:00
qt5程序打包含qml

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

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

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

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

  2. 运行qt环境,我是使用的osgeo4w64的环境,启动后开启Qt5的环境,如下:
    qt5程序打包含qml

  3. 运行windeployqt,如下:
    qt5程序打包含qml

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

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

其他参考文章

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