[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: