最终目标是在 Qt Creator 中运行基于 Qt5.6 的应用程序。我发现有一个工具 C:\Qt\5.6\mingw49_32\bin\windeployqt.exe
。所以我按如下方式执行:
C:\Qt\5.6\mingw49_32\bin>windeployqt.exe PATH_TO_MY_EXE_FOLDER --release -3dcore -quick -qml -3dquick -3dinput
然后我启动我的应用程序,发现 模块 QtQuick/QtQuick.Scene3D 没有安装
。为了解决这个问题,我将整个 qml 文件夹从 C:\Qt\5.6\mingw49_32\qml
复制到我的应用程序所在的文件夹。
我的屏幕上出现以下内容:
qrc:/main.qml:2:1: plugin cannot be loaded for module "QtQuick.Scene3D": Cannot load library C:\gui\qml\QtQuick\Scene3D\qtqui ckscene3dplugin.dll: ?? ??????? ????????? ?????????."
我该怎么办?实际上,qtquickscene3dplugin.dll
在正确的文件夹中。
部署基于 Qt5.6 的应用程序的最佳/最简单方法是什么?
最佳答案
经过半天不间断的实验,这里有一个解决方案: 1. 将 C:\Qt\5.6\mingw49_32\bin 中的所有 *.dll 复制到您的 bin 文件夹 2.从C:\Qt\5.6\mingw49_32复制qml和plugin文件夹到你的bin文件夹 3. 使用以下内容在您的 bin 文件夹中创建 qt.conf :
[Paths]
Prefix=.
Plugins=plugins
Qml2Imports=qml
完成所有这些步骤后,您将能够从 Windows 资源管理器启动您的应用程序。不要问我复制所有 DLL 如何影响插件加载问题:)
关于c++ - 使用 MinGW 和 Qt5.6 部署应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36454533/