qt - windeployqt 模块 QtQuick 未安装
问题描述
我正在尝试部署一组 QT 应用程序。在 linux 上,安装所有依赖项后,所有应用程序都可以正常工作,但在 windows 中,基于 QtQuick 的应用程序根本无法正常工作。
要在 Windows 上部署,我按照以下步骤操作:
- 在发布模式下编译我的项目。
- 添加
mingw
到系统环境路径 - 跑
windeployqt.exe --release c:\myappdir\relesase\myapp.exe
当第 3 步完成时,我在其中的release
文件夹Qt5Quick.dll中有很多 dll。但myapp.exe
不起作用,也没有抛出任何错误。为了获得任何额外的信息,我添加console
到myapp.pro文件下的CONFIG参数并通过控制台运行 myapp.exe,我得到了以下信息:
QQmlApplicationEngine failed to load component
qrc:/main.qml:1 module "QtQuick" is not installed
qrc:/main.qml:-1 module "QtQuick" is not installed
qrc:/main.qml:1 module "QtQuick" is not installed
我的 QtSDK 版本是带有MinGW的 5.10.0,所以这个解决方案根本不起作用,我遇到了更多错误。
更重要的是,如果我尝试在根文件夹中没有这些 dll 的情况下运行 myapp.exe,它可以正常工作。
我整天都在试图找到任何解决方案,但似乎没有任何效果。
我很确定我错过了一些东西,但我不知道它是什么。谢谢
解决方案
正如我想的那样,我错过了一些东西。--qmldir
添加 QtQuick 模块需要选项。
windeployqt.exe --qmldir . --release c:\myappdir\relesase\myapp.exe
那条线成功了,
推荐阅读
- c# - Excel Interop PageSetup 重视有或没有类型转换的奇怪行为
- spring - 使用 Spring Data JPA 避免 UnexpectedRollbackException
- python - 我无法绘制我的 Matplotlib 预测,我不断收到内存错误
- swift - 在 UITableViewCell 中的按钮单击函数中添加一个参数
- java - 如何设计近乎实时的数据流过滤解决方案以向 Web 客户端提供大数据?
- php - 如何在与 csv 文件创建和输出相同的页面中有一个标题('Location:'),或者在基于 html 的页面中创建这个 csv 文件?
- python - 如何更正我的代码以创建文件以在 python 中保存权重?
- python - 无法将字符串转换为日期时间 python
- javascript - 如何让tinymce能够在vue js中上传图片
- testing - Azure DevOps 将“不确定”测试报告为“未运行”