为 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
我使用 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