Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Qt 5.15 undefined symbol



  • I have built the Qt 5.15.0 beta3 libraries for iMX6 and installed them on the target. I selected the dashboard example and tried to deploy it. I get the following:

    14:16:49: Starting /usr/local/Qt-5.15.0-3Dxx/examples/quickcontrols/extras/dashboard/dashboard ...
    QML debugging is enabled. Only use this in a safe environment.
    QQmlApplicationEngine failed to load component
    qrc:/qml/dashboard.qml:51:1: plugin cannot be loaded for module "QtQuick": Cannot load library /usr/local/Qt-5.15.0-3Dxx/qml/QtQuick.2/libqtquick2plugin.so: (/usr/local/Qt-5.15.0-3Dxx/qml/QtQuick.2/libqtquick2plugin.so: undefined symbol: _Z26qml_register_types_QtQuickv)
    14:16:49: Remote process crashed.

    I used the same configure script to build the libraries that I used on 5.9.3 and 5.12.2 and 5.12.7. It looks like in 5.15 there were enhancements made to plugins. I have searched the library code and only find extern references to qml_register_types_QtQuick

    <srcDir>/qtdeclarative/src/imports/qtquick2/plugin.cpp

    60 QtQuick2Plugin(QObject *parent = nullptr) : QQmlExtensionPlugin(parent)
    61 {
    62 volatile auto registration = &qml_register_types_QtQuick;
    63 Q_UNUSED(registration);
    64 }

    lines 62 and 63 were added in 5.15 - so my questions are A) Where is the actual declaration and B) Do I need to create it? and if so where should these functions be defined?

    Thanks



  • I am also having the same issue.Please let me know if you have any solution for that.
    Thanks



  • I too have the same problem witrh imx8 & imx6.



  • What we noticed at KDE neon is that the generated makefiles seem to have some dependency ordering problem. Specifically we ran make docs before make all and that resulted in the *_qmltyperegistrations.cpp not getting generated.
    Reordering the make invocations solved it for us.



  • @sitter thank you for your info, I still have the same problem, Couls you define the steps how did u achieve it


Log in to reply