qt - 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...
解决方案
实际上,Qt 5.11.2 与 windeployqt 一起提供了一个选项/标志,用于创建与调试/发布可执行文件相关的依赖项。
用于创建依赖于调试版本的 dll:
windeployqt 可执行文件--debug
用于创建依赖于发布版本的 dll:
windeployqt 可执行文件--release
这解决了我的问题。
推荐阅读
- mql4 - 获得“找到空的受控语句”警告 | 元编辑器
- php - Api Json 数据不显示
- reactjs - 找不到模块:错误:无法解析“/app/node_modules/next/dist/lib”中的“pnpapi”
- docker - 将参数传递给 Docker 入口点
- javascript - 如何使用正则表达式从复杂且动态的 JavaScript 样式字典中提取特定值?
- python - Python - 使用拼字游戏字母值字典对单词列表进行评分
- android - 如何制作静态导航安卓平板?喜欢这个设计
- for-loop - 网页抓取时无法遍历多个页面
- arrays - C - 从数组中删除重复项
- javascript - Reactjs Stripe 支付不适用于 Node/Express