首页 > 解决方案 > Qt5.11.2 windeployqt 没有创建有限依赖 dll

问题描述

尝试以调试模式运行应用程序时。错误:“代码执行无法继续,因为未找到 Qt5Core.dll。”

尝试以发布模式运行应用程序时..

问题1:MinGW 将可执行文件视为调试可执行文件,因此 windeployqt 正在创建依赖于调试版本的 dll!

问题2:出现如上所示的相同错误 - “代码执行无法继续,因为未找到 Qt5Core.dll。”。

任何人都可以为此提供解决方案吗?或请求指导解决问题。

同样的问题发布在 -Qt windeployqt 导致部署不可用

windeployqt 的输出

<executable path>windeployqt 
<executable name>.exe 
<executable name>.exe 32 bit, debug executable 
Adding Qt5Svg for qsvgicond.dll 
Skipping plugin qtvirtualkeyboardplugind.dll due to disabled dependencies (Qt5Qml Qt5Quick). 
Direct dependencies: Qt5Core Qt5Gui Qt5Network Qt5Sql Qt5Widgets 
All dependencies : Qt5Core Qt5Gui Qt5Network Qt5Sql Qt5Widgets 
To be deployed : Qt5Core Qt5Gui Qt5Network Qt5Sql Qt5Svg Qt5Widgets 
Updating Qt5Cored.dll. 
Updating Qt5Guid.dll. 
Updating Qt5Networkd.dll.
Updating Qt5Sqld.dll. 
Updating Qt5Svgd.dll. 
Updating Qt5Widgetsd.dll. 
Updating libGLESV2d.dll. 
Updating libEGLd.dll. 
Updating D3Dcompiler_47.dll. 
Updating opengl32sw.dll. 
Updating libgcc_s_dw2-1.dll. 
Updating libstdc++-6.dll. 
Updating qsvgd.dll.
Updating qtgad.dll.
Updating qtiffd.dll.
Updating qwbmpd.dll.
Updating qwebpd.dll.
Creating directory <path of executable>/platforms. 
Updating qwindowsd.dll. 
Creating directory <path of executable>/sqldrivers. 
Updating qsqlited.dll. 
Updating qsqlmysqld.dll.
Updating qsqlodbcd.dll.
Updating qsqlpsqld.dll. 
Creating directory <path of executable>/styles.
Updating qwindowsvistastyled.dll. 
Creating <path of executable>\translations...
Creating qt_ar.qm... 
Creating qt_bg.qm...
Creating qt_ca.qm...
Creating qt_cs.qm...
Creating qt_da.qm...
Creating qt_de.qm...
Creating qt_en.qm...
Creating qt_es.qm...
Creating qt_fi.qm...
Creating qt_fr.qm...
Creating qt_gd.qm...
Creating qt_he.qm...
Creating qt_hu.qm...
Creating qt_it.qm...
Creating qt_ja.qm...
Creating qt_ko.qm...
Creating qt_lv.qm...
Creating qt_pl.qm...
Creating qt_ru.qm...
Creating qt_sk.qm...
Creating qt_uk.qm... 

标签: qtmingw

解决方案


实际上,Qt 5.11.2 与 windeployqt 一起提供了一个选项/标志,用于创建与调试/发布可执行文件相关的依赖项。

用于创建依赖于调试版本的 dll:

windeployqt 可执行文件--debug

用于创建依赖于发布版本的 dll:

windeployqt 可执行文件--release

这解决了我的问题。


推荐阅读