Details
-
Bug
-
Resolution: Unresolved
-
P2: Important
-
None
-
6.10
-
None
Description
To reproduce this, create a new Qt Quick project with Creator's wizard, add a QtQuick.Controls import and run it on an iOS emulator.
Qt Quick Controls does exist on the host:
mitch@Mitchs-MacBook-Pro ios % pwd /Users/mitch/dev/Qt/6.8.1/ios mitch@Mitchs-MacBook-Pro ios % ls qml/QtQuick/Controls Basic libqtquickcontrols2plugin.a FluentWinUI3 libqtquickcontrols2plugin.prl Fusion libqtquickcontrols2plugin_debug.a Imagine libqtquickcontrols2plugin_debug.prl Material objects-Debug Universal objects-Release designer plugins.qmltypes iOS qmldir impl
With QML_IMPORT_TRACE=1:
09:56:11: Starting remote process. QML debugging is enabled. Only use this in a safe environment. qt.qml.import: addImportPath: "/usr/local/Qt-6.8.1/qml" qt.qml.import: addImportPath: "qrc:/qt/qml" qt.qml.import: addImportPath: "qrc:/qt-project.org/imports" qt.qml.import: addImportPath: "/Users/mitch/Library/Developer/CoreSimulator/Devices/969D3391-5C5C-4BD9-9657-F625B7A256E6/data/Containers/Bundle/Application/08A339E5-2316-4711-9D43-19835C96F256/appuntitled3.app" qt.qml.import: addLibraryImport: "untitled3" version "(latest)" as "" qt.qml.import: importExtension: loaded ":/qt/qml/untitled3/qmldir" qt.qml.import: locateLocalQmldir: untitled3 module's qmldir found at ":/qt/qml/untitled3/qmldir" qt.qml.import: resolveType: "Main" => "" QUrl("qrc:/qt/qml/untitled3/Main.qml") TYPE/URL qt.qml.import: addLibraryImport: qrc:/qt/qml/untitled3/Main.qml "QtQuick" version "(latest)" as "" qt.qml.import: importExtension: qrc:/qt/qml/untitled3/Main.qml loaded ":/qt-project.org/imports/QtQuick/qmldir" qt.qml.import: resolvePlugin Could not resolve dynamic plugin with base name "qtquick2plugin" in ":/qt-project.org/imports/QtQuick" file does not exist qt.qml.import: loading dependent import "QtQml" version 6.8 as "" qt.qml.import: addLibraryImport: qrc:/qt/qml/untitled3/Main.qml "QtQml" version "6.8" as "" qt.qml.import: importExtension: qrc:/qt/qml/untitled3/Main.qml loaded ":/qt-project.org/imports/QtQml/qmldir" qt.qml.import: resolvePlugin Could not resolve dynamic plugin with base name "qmlplugin" in ":/qt-project.org/imports/QtQml" file does not exist qt.qml.import: loading dependent import "QML" version 1.0 as "" qt.qml.import: addLibraryImport: qrc:/qt/qml/untitled3/Main.qml "QML" version "1.0" as "" qt.qml.import: loading dependent import "QtQml.Models" version 6.8 as "" qt.qml.import: addLibraryImport: qrc:/qt/qml/untitled3/Main.qml "QtQml.Models" version "6.8" as "" qt.qml.import: importExtension: qrc:/qt/qml/untitled3/Main.qml loaded ":/qt-project.org/imports/QtQml/Models/qmldir" qt.qml.import: resolvePlugin Could not resolve dynamic plugin with base name "modelsplugin" in ":/qt-project.org/imports/QtQml/Models" file does not exist qt.qml.import: locateLocalQmldir: QtQml.Models module's qmldir found at "" qt.qml.import: loading dependent import "QtQml.WorkerScript" version 6.8 as "" qt.qml.import: addLibraryImport: qrc:/qt/qml/untitled3/Main.qml "QtQml.WorkerScript" version "6.8" as "" qt.qml.import: importExtension: qrc:/qt/qml/untitled3/Main.qml loaded ":/qt-project.org/imports/QtQml/WorkerScript/qmldir" qt.qml.import: resolvePlugin Could not resolve dynamic plugin with base name "workerscriptplugin" in ":/qt-project.org/imports/QtQml/WorkerScript" file does not exist qt.qml.import: locateLocalQmldir: QtQml.WorkerScript module's qmldir found at "" qt.qml.import: locateLocalQmldir: QtQml module's qmldir found at "" qt.qml.import: locateLocalQmldir: QtQuick module's qmldir found at "" qt.qml.import: locateLocalQmldir: QtQuick.Controls module's qmldir file not found qt.qml.import: addLibraryImport: qrc:/qt/qml/untitled3/Main.qml "QtQuick.Controls" version "(latest)" as "" QQmlApplicationEngine failed to load component qrc:/qt/qml/untitled3/Main.qml:2:1: module "QtQuick.Controls" is not installed 09:56:14: Run ended.
/Users/mitch/dev/Qt/6.8.1/ios/qml/QtQuick/Controls/qmldir:
module QtQuick.Controls linktarget Qt6::qtquickcontrols2plugin plugin qtquickcontrols2plugin classname QtQuickControls2Plugin designersupported typeinfo plugins.qmltypes optional import QtQuick.Controls.Fusion auto optional import QtQuick.Controls.Material auto optional import QtQuick.Controls.Imagine auto optional import QtQuick.Controls.Universal auto optional import QtQuick.Controls.FluentWinUI3 auto optional import QtQuick.Controls.Windows auto optional import QtQuick.Controls.macOS auto optional import QtQuick.Controls.iOS auto default import QtQuick.Controls.Basic auto prefer :/qt-project.org/imports/QtQuick/Controls/
The problem is that this code is missing from the CMakeLists.txt:
find_package(Qt6 REQUIRED COMPONENTS Quick QuickControls2) ... target_link_libraries(appuntitled3 PRIVATE Qt6::Quick Qt6::QuickControls2 )
New users that are just using the project that Creator makes for them won't know this, so we should think of a way to improve this experience for them.