关于QT自带的打包工具windeployqt的使用

网友投稿 1403 2022-11-07

关于QT自带的打包工具windeployqt的使用

关于QT自带的打包工具windeployqt的使用

首先,我们在桌面建立一个文件夹test;

然后,我们将qt写的一个exe文件拷贝进去dcmlib_test.exe

接着,我们打开QT的命令行工具

进入到test目录

cd C:\Users\Administrator\Desktop\test

接着输入:

windeployqt dcmlib_test.exe --qmldir C:\Qt\Qt5.7.0\5.7\msvc2013\qml

示例:windeployqt空格**.exe 空格--qmldir空格C:\Qt\Qt5.7.0\5.7\msvc2013\qml回车

然后就可以看到开始复制文件;

这时候一般情况不会有什么问题,但是有个别的会出现以下的问题,

第一,很多自己在程序里添加使用的库没有被打包到test文件夹下,需要自己手动拷贝,

第二,会出现,程序运行了,进程里也有运行的id,但是界面却没有显示,

解决如下:这是因为打包少拷贝了一个文件夹,将Qt安装目录下C:\Qt\Qt5.7.0\5.7\msvc2013\qml\QtQuick的Controls.2拷贝到test目录下的QtQuick目录下

正是因为缺少了Controls.2导致运行程序界面无法显示

第三,可能会出现缺少msvcp120d.dll和msvcr120d.dll的情况

解决如下:上面这两个文件在系统的System32文件夹下有这两个文件,在vs的安装目录C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC

下也有这两个文件,而且有多个,

这里我们要拷贝的是vs安装目录下的msvcp120d.dll和msvcr120d.dll这两个文件,具体用到安装目录下的那两个dll文件,根据系统或者编译器一个一个试把。

注意:一定要以管理员身份运行cmd否则拷贝会不完全:

如果是QWidget的程序,直接将.exe文件拷贝到一个文件夹下,然后以管理员身份运行cmd,cd到.exe的文件夹下,输入windeployqt dcmlib_test.exe就可以了。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:linux下如何实现多个定时器
下一篇:在SpringBoot中注入RedisTemplate实例异常的解决方案
相关文章

 发表评论

暂时没有评论,来抢沙发吧~