Load qmldir from QRC file
12,963
You need to add to the import path the folder where the modules are located.
In this case it's qrc:/modules/
.
Example:
engine.addImportPath( "qrc:///modules" );
For a module to work you need to have access to the qmldir
file, but also all the files referenced in it. So you need to add all the files of the library to the the qrc.
![Joery](https://i.stack.imgur.com/Lv2QI.png?s=256&g=1)
Author by
Joery
Updated on July 18, 2022Comments
-
Joery almost 2 years
I'm trying to use the QML-material library in a Qt Quick Application.
But when I try to use the import code it says
module "Material" is not installed`
import Material 0.1
I did also try this but that seems not to work:
import "modules/Material" as Material
qml.qrc
looks like this, allqmldir
files are listed:<RCC> <qresource prefix="/"> <file>main.qml</file> <file>modules/Material/qmldir</file> <file>modules/Material/Extras/qmldir</file> <file>modules/Material/ListItems/qmldir</file> <file>modules/QtQuick/Controls/Styles/Material/qmldir</file> </qresource> </RCC>
main.cpp
#include <QGuiApplication> #include <QQmlApplicationEngine> int main(int argc, char *argv[]) { QGuiApplication app(argc, argv); QQmlApplicationEngine engine; engine.addImportPath("qrc:/"); engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); return app.exec(); }
Is there something I'm missing or is it not possible to use
qmldir
inqrc
file? -
Itay Grudev about 8 yearsFor an unmodified
qml-material
installed as a git submodule with the.pri
file you will need to just add:engine.addImportPath( "qrc:///" );
.