gpt4 book ai didi

c++ - Qt windeployqt 导致部署不可用

转载 作者:太空宇宙 更新时间:2023-11-04 12:44:08 24 4
gpt4 key购买 nike

我正在使用 windeployqt 可执行文件来准备我的安装树。该工具将所有必需的(甚至一些不必要的)dll 复制到指定的文件夹中,并对 Qt5Core.dll 进行修补以获取硬编码路径变量。以下是我如何执行该工具。


C:\Qt\5.11.2\mingw53_32\bin>windeployqt.exe D:\Imaq
D:\Imaq\Imaq.exe 32 位,调试可执行文件
为 qsvgicond.dll 添加 Qt5Svg
直接依赖:Qt5Core Qt5Gui Qt5Network Qt5Widgets
所有依赖项:Qt5Core Qt5Gui Qt5Network Qt5Widgets
待部署:Qt5Core Qt5Gui Qt5Network Qt5Svg Qt5Widgets
更新 Qt5Cored.dll。
更新 Qt5Guid.dll。
更新 Qt5Networkd.dll。
更新 Qt5Svgd.dll。
更新 Qt5Widgetsd.dll。
更新 libGLESV2d.dll。
更新 libEGLd.dll。
更新 D3Dcompiler_47.dll。
更新 opengl32sw.dll。
更新 libgcc_s_dw2-1.dll。
更新 libstdc++-6.dll。
正在修补 Qt5Cored.dll...
创建目录 D:/Imaq/bearer。
更新 qgenericbearerd.dll。
创建目录 D:/Imaq/iconengines。
更新 qsvgicond.dll。
创建目录 D:/Imaq/imageformats。
更新 qgifd.dll。
更新 qicnsd.dll。
更新 qicod.dll。
更新 qjpegd.dll。
更新 qsvgd.dll。
更新 qtgad.dll。
更新 qtiffd.dll。
更新 qwbmpd.dll。
更新 qwebpd.dll。
创建目录 D:/Imaq/platforms。
更新 qwindowsd.dll。
创建目录 D:/Imaq/styles。
更新 qwindowsvistastyled.dll。
创建 D:\Imaq\translations...
正在创建 qt_ar.qm...
正在创建 qt_bg.qm...
.
.
从上面的输出来看,该工具似乎正在运行,没有任何错误。但是在部署之后,如果我尝试执行二进制文件,则会显示以下错误。

enter image description here

从错误来看,似乎正在复制错误的 dll。但是,在我的机器上,我只有一个编译器 (mingw53_32),而且这些 dll 没有其他可能的版本。

注意:我使用在线安装程序安装了 Qt,并且我只从列表中选择了 Qt creator 和 Qt mingw。安装程序中列出的所有其他组件均未选中。我想知道这个问题是否是因为缺少任何组件。

另外,我尝试过像 --debug、--compiler-runtime 这样的开关,尽管这些开关似乎与这个问题没有任何关系。任何指针将不胜感激。

最佳答案

正如我从您的 windeployqt 输出中了解到的,您正在尝试部署应用程序的调试版本(因为 windeployqt.exe 正在复制`Qt5Cored.dll、Qt5Guid.dll , Qt5Networkd.dll' 等库)。您应该尝试部署应用的发布版本。

在 Qt creator 中,您会在左下角找到选项,就在运行按钮上方。当您的项目打开时,可以通过单击左侧工具栏中的“项目”来访问调试和发布构建的构建配置。

Qt5.11.2 windeployqt is not creating finite dependent dll 中所述

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

用于创建依赖于调试版本的 dll:windeployqt 可执行文件 --debug

用于创建依赖于发布版本的 dll:windeployqt 可执行文件 --release

关于c++ - Qt windeployqt 导致部署不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52584794/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com