Missing dependency in qml-module-qtquick-dialogs?
Hello,
I am submitting this email because I am not sure, whether there is a mistake
in the dependency list of the debian / raspbian bullseye package qml-module-qtquick-dialogs:
During the process of contributing to an open source project, I am asked to add the package
qml-module-qtquick-controls to my installation script.
I have not been aware that I needed that package, since it had been autoinstalled on my system by qt5-quick-demos.
I am running raspbian bullseye on a Raspberry Pi 4.
After removing qt5-quick-demos, I got the following error from the qml resource compiler:
QQmlApplicationEngine failed to load component
qrc:/launcher/qml/main.qml:438:5: Type MessageDialog unavailable
file:///usr/lib/arm-linux-gnueabihf/qt5/qml/QtQuick/Dialogs/DefaultMessageDialog.qml:41:1: module "QtQuick.Controls" version 1.2 is not installed
That is, because I added these lines to my main.qml programm:
import QtQuick.Dialogs 1.1
MessageDialog {
id: messageBox
title: window.title
icon: StandardIcon.Critical
modality: Qt.ApplicationModal
}
And I installed the package qml-module-qtquick-dialogs.
To investigate the problem, I made sure, that the mentioned file is from the dialogs package (see [1]) and
that it really imports QtQuick.Controls 1.2 (see [2])
To get the program running, I need to install the module qml-module-qtquick-controls
The question that remains for me is:
Why do I have to install the controls package manually, when wanting to use QtQuick.Dialogs?
I would have expected to have it already automatically installed with qml-module-qtquick-dialogs.
Is qml-module-qtquick-controls a missing dependency to that package?
Because it is not mentioned in the dependency list of it (see [3]).
I hope, that this is useful to you.
Kind regards,
purewasa
Footnotes:
----------
[1] $ dpkg -S DefaultMessageDialog.qml
qml-module-qtquick-dialogs:armhf: /usr/lib/arm-linux-gnueabihf/qt5/qml/QtQuick/Dialogs/DefaultMessageDialog.qmlc
qml-module-qtquick-dialogs:armhf: /usr/lib/arm-linux-gnueabihf/qt5/qml/QtQuick/Dialogs/DefaultMessageDialog.qml
[2] $ less -N /usr/lib/arm-linux-gnueabihf/qt5/qml/QtQuick/Dialogs/DefaultMessageDialog.qml
40 import QtQuick 2.2
41 import QtQuick.Controls 1.2
42 import QtQuick.Controls.Private 1.0
43 import QtQuick.Dialogs 1.1
44 import QtQuick.Window 2.1
45 import "qml"
[3] $ apt show qml-module-qtquick-dialogs
Package: qml-module-qtquick-dialogs
Version: 5.15.2-2
Priority: optional
Section: libs
Source: qtquickcontrols-opensource-src
Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
Installed-Size: 598 kB
Depends: qml-module-qt-labs-folderlistmodel, qml-module-qt-labs-settings, qml-module-qtqml, qml-module-qtquick-privatewidgets, qml-module-qtquick-window2, libqt5qml5 (<< 5.15.3~), libqt5qml5 (>= 5.15.2+dfsg~), libc6 (>= 2.4), libgcc-s1 (>= 3.5), libqt5core5a (>= 5.15.2+dfsg~), libqt5gui5 (>= 5.15.2+dfsg~) | libqt5gui5-gles (>= 5.15.2+dfsg~), libqt5quick5 (>= 5.15.2+dfsg~) | libqt5quick5-gles (>= 5.15.2+dfsg~), libstdc++6 (>= 5), qtbase-abi-5-15-2, qtdeclarative-abi-5-15-2
Homepage: https://doc.qt.io/qt-5/qtquickcontrols1-index.html
Download-Size: 114 kB
APT-Manual-Installed: yes
APT-Sources: http://raspbian.raspberrypi.org/raspbian bullseye/main armhf Packages
Description: Qt 5 Dialogs QML module
Qt is a cross-platform C++ application framework. Qt's primary feature
is its rich set of widgets that provide standard GUI functionality.
.
This package provides various dialogs that can be used in Qt Quick.
Reply to: