2

我在我的 QML 项目中使用qChart.js,并且能够通过将其导入 QML 来很好地访问这些库

import jbQuick.Charts 1.0

并通过硬编码文件路径来添加资源路径

QQmlApplicationEngine engine;
engine.addImportPath("C:\\PathToProject\\qml\\");

但是,我想部署我的项目并且不能有硬编码路径,因为这会因用户而异。我已尝试添加此问题中指定的文件,因此我的 qrc 现在具有以下内容:

在此处输入图像描述

我现在已将 addImportPath 语句修改为以下内容:

engine.addImportPath("qrc:///qml");

但是,当使用 qrc 文件运行QChart.qmlQChart.js包含在其中时,我收到以下错误:

qmlcache_loader.obj:-1: error: LNK2001: unresolved external symbol "unsigned char const * const QmlCacheGeneratedCode::_qml_jbQuick_Charts_qml_jbQuick_Charts_QChart_js::qmlData" (?qmlData@_qml_jbQuick_Charts_qml_jbQuick_Charts_QChart_js@QmlCacheGeneratedCode@@3QBEB)
qmlcache_loader.obj:-1: error: LNK2001: unresolved external symbol "unsigned char const * const QmlCacheGeneratedCode::_qml_jbQuick_Charts_qml_jbQuick_Charts_QChart_qml::qmlData" (?qmlData@_qml_jbQuick_Charts_qml_jbQuick_Charts_QChart_qml@QmlCacheGeneratedCode@@3QBEB)

我的理解是,在 中引用的任何文件qmldir也必须添加到 qrc 文件中,即QChart.qmland QChart.js. 我还应该补充一点,我在发布模式下运行它。在调试模式下,我只是得到module "jbQuick.Charts" is not installed错误。我究竟做错了什么?

4

0 回答 0