- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在使用 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...
.
.
从错误来看,似乎正在复制错误的 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/
我正在使用 windeployqt 为一个非常简单的 Hello World 类型 QML 应用程序创建一个具有正确依赖项的可执行文件。使用时,用命令 windeployqt . --release
我在 Release模式下构建了我的 Qt 项目并拥有 .exe 文件。我正在使用 Qt 5.7 32 位桌面版 (MSVC 2015) cmd 并运行 C:\Qt\5.7\msvc2015\bin\
通常部署一个 Qt 项目我要么: 继续运行它并找到它提示缺少的库并添加它们直到没有更多为止。 使用 dependency walker 让我完成大部分(如果不是全部),然后返回选项 1。 或者只是创建
我正在使用 windeployqt 可执行文件来准备我的安装树。该工具将所有必需的(甚至一些不必要的)dll 复制到指定的文件夹中,并对 Qt5Core.dll 进行修补以获取硬编码路径变量。以下是我
我正在尝试使用 windeployqt.exe (Qt 5.13.2) 为 CMake 3.16 生成的调试应用程序部署 dll。除了平台插件 dll 部署了 qwindows.dll 之外,所有 d
这个问题在这里已经有了答案: Deploy Qt5 QML application (8 个答案) 关闭 4 年前。 我正在尝试部署一组 QT 应用程序。在 Linux 上,所有应用程序在安装所有依
这个问题在这里已经有了答案: Deploy Qt5 QML application (8 个答案) 关闭 4 年前。 我正在尝试部署一组 QT 应用程序。在 Linux 上,所有应用程序在安装所有依
我正在尝试部署 Qt 应用程序,但每次我尝试运行 windeployqt.exe 时,我都会在 Windows 弹出窗口中收到此错误: This app can't run on your PC, t
我被告知“windeployqt”实用程序,它应该能够收集正确运行我的 Windows Qt 应用程序所需的所有 Qt/MinGW DLL。所以我试了一下。 不幸的是,我注意到它收集的文件比必要的多。
在 Windows 中,您可以运行 windeployqt.exe 来近似 Qt 应用程序的库、qml 和插件依赖项。 在 Linux 中,我可以使用 ldd 来确定库依赖性,但我还没有找到一种方法来
我有一个 qt c++ 普通程序。在 Windows 中使用 mingw8.1 gcc 作为编译器。 我可以在qt creator中运行它。 但是当我想使用 windeplotqt 部署时,它失败了:
我目前正在尝试将 Fedora 21 机器上的 Qt 应用程序交叉编译到 Windows(目前为 32 位)。编译没有问题,但部署没有问题。当然,我可以从目录中复制所有必要的文件,但我认为这是浪费时间
每次在 Visual Studio 中首次构建新的 Qt 项目时,即使安装了 VS Tools,我也必须复制一些与 Qt 相关的二进制文件(Qt5Core.dll、平台文件...)。否则,当从 Vis
每次在 Visual Studio 中首次构建新的 Qt 项目时,即使安装了 VS Tools,我也必须复制一些与 Qt 相关的二进制文件(Qt5Core.dll、平台文件...)。否则,当从 Vis
我是一名优秀的程序员,十分优秀!