为 Windows 部署 QT exe 时遇到问题

Trouble deploying QT exe for Windows

我使用 QT Creator 4.7.1 创建了一个新的 qt widgets 应用程序。 我select释放模式

然后我构建项目。

在release文件夹中,我的exe是这样的

现在我打开命令行 运行 命令

windeployqt.exe C:\Users\rober\Desktop\build-testingqtrelease-Desktop_Qt_5_11_2_MSVC2017_64bit-Release\release\testingqtrelease.exe

这导致了这个

在尝试 运行 exe 时,我收到一条错误消息。

所以我做了一些研究,发现许多来源都在谈论从 mingw730_64 复制不同的 dll,但其中 none 对我有用。 我是 QT 的新手,所以我不确定我是否犯了一个简单的错误。

如有任何帮助,我们将不胜感激。 谢谢你。

我建议您使用使用 msvc 2015 32 构建的 Qt,让 Qt 应用程序在 Windows 2012 (32/64) 上运行到现在,以及 Windows 7 (32/64)到目前为止,但这不是您问题的答案。

为了帮助您知道哪些是所需的 dll,请使用 Qt 框架的 bin 子文件夹中的应用程序 windeployqt。 将您的 exe 作为参数传递,该实用程序将在您的 exe 子文件夹中复制所需的 dll 和插件。 之后请查看 qt.conf 文件。这是 Qt 应用程序用来了解插件存储位置和其他内容的文件。

请尝试下载这个 https://github.com/denisgottardello/BackupTo 并查看 qt.conf 文件、资源文件和 .pro 文件。

您是否尝试过 Qt Windows 部署工具? http://doc.qt.io/qt-5/windows-deployment.html 您将程序的 exe 拖到 WinDeploy.exe 工具上,然后它会解决所有问题。 linux 也有类似的情况。

好的,我解决了,显然是命令 windeployqt.exe C:\Users\rober\Desktop\build-testingqtrelease-Desktop_Qt_5_11_2_MSVC2017_64bit-Release\release\testingqtrelease.exe 由于 qt 构建版本与 windeployqt.exe

之间的版本不兼容,因此无法正常工作

要找到正确的版本,请检查您的构建设置:

并导航到 qt 版本,找到“windeployqt.exe”

我的位于此处:F:\QT.12.0\msvc2017_64\bin

现在,只需将 qt 编译后的 exe 拖到“windeployqt.exe”上,它就会下载相应的 dll