Qt exe程序缺少dll(Qt exe程序快速关联dll)
Posted 紫夜君
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt exe程序缺少dll(Qt exe程序快速关联dll)相关的知识,希望对你有一定的参考价值。
用Qt编译的exe程序,在打开时,经常会提示缺少各种dll而导致程序无法正常运行。
将相关dll放置到exe程序的当前目录下就可以解决这个问题,这也是打包程序前必须的操作。
一个笨方法是依据相关提示,在Qt安装目录下的bin目录,将相关缺少的dll依次拷贝到exe程序的目录下。
但是通常都是使用windeployqt工具解决的,该工具是qt自带的部署工具,不需要另外安装。
操作步骤
- 把生成的exe文件拿出来,放置到一个单独的目录下,我在桌面新建一个名为test的文件夹,然后把这个exe文件放进去。其路径如下 C:\\Users\\Administrator\\Desktop\\test
2.在windows的快捷栏中打开Qt命令行。由于我的Demo.exe程序是Qt5.12.9版本,使用MSVC 2015 64位进行编译的,所以我需要打开Qt 5.12.9(MSVC 2015 64-bit)
开启后出现如下界面:
3.将文件路径切换到Demo.exe程序目录下,在命令行输入cd C:\\Users\\Administrator\\Desktop\\test
如果你和我的文件路径不同,这里cd 你自己的路径即可。
4.使用windeployqt部署程序。在命令行输入 windeployqt Demo.exe
如果你的程序名和我的不同,这里windeployqt 你自己的程序名即可。
等待部署完成后,会发现Demo.exe目录下多了很多dll
这时候Demo.exe就能够正常运行啦。
当然如果你在工程中调用了除QT以外的其他第三方DLL,windeployqt 是不会帮你自动关联的,这就需要你手动将你使用的dll放到Demo.exe的目录下了。
结语
如果你有什么不懂的地方,亦或者发现博主某个地方存在错误,欢迎留言交流。感谢你的反馈。
如果你觉得这篇文章对你有帮助,请在文章的左下角点个赞。
以上是关于Qt exe程序缺少dll(Qt exe程序快速关联dll)的主要内容,如果未能解决你的问题,请参考以下文章
QT 生成的exe 无法打开 说缺少QTCORED4.DLL文件, 试了很多次,把QTCORED4.DLL文件放到目录下还是不行