c++ - 使用 MinGW 和 Qt5.6 部署应用程序

标签 c++ qt deployment qt5.6

最终目标是在 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/

相关文章:

c++ - QQuickWindow::grabWindow:场景图已经在使用中

c++ - Qt 对象的生命周期

c++ - QWebInspector 无法正常工作

grails - 使用共享缓存和 session 部署多个 Grails 实例?

networking - Kubernetes如何确保动态部署?如何更改数据路径?

c++ - Visual Studio Code : settings. json 系列的 C_Cpp.xxx 配置与 c_cpp_properties.json?

c++ - 检索要通过网络发送的 ID3D11Texture2D 数据

c++ - 虚函数的不同返回类型

c++ - Qt 5 beta2, Qt Creator 2.6, MSVC error : Qt Creator needs a compiler set up to build. 在套件选项中配置编译器

deployment - 来自 'cap install' 命令的“未找到 Rakefile”错误