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

Project ERROR: Unknown module(s) in QT: quick



  • Hi,
    Device beaglebone Black.

    git: git clone git://code.qt.io/qt/qtbase.git -b 5.12.4 on target (cross compiler failed gracefully) so I did it on target
    

    configured.

    ./configure -release -opengl es2 -opensource -confirm-license  -no-use-gold-linker -v -no-gbm
    

    set ti up

    [9;15]debian@beaglebone:~/towsrc$ qmake -query
    QT_SYSROOT:
    QT_INSTALL_PREFIX:/usr/local/Qt-5.12.4
    QT_INSTALL_ARCHDATA:/usr/local/Qt-5.12.4
    QT_INSTALL_DATA:/usr/local/Qt-5.12.4
    QT_INSTALL_DOCS:/usr/local/Qt-5.12.4/doc
    QT_INSTALL_HEADERS:/usr/local/Qt-5.12.4/include
    QT_INSTALL_LIBS:/usr/local/Qt-5.12.4/lib
    QT_INSTALL_LIBEXECS:/usr/local/Qt-5.12.4/libexec
    QT_INSTALL_BINS:/usr/local/Qt-5.12.4/bin
    QT_INSTALL_TESTS:/usr/local/Qt-5.12.4/tests
    QT_INSTALL_PLUGINS:/usr/local/Qt-5.12.4/plugins
    QT_INSTALL_IMPORTS:/usr/local/Qt-5.12.4/imports
    QT_INSTALL_QML:/usr/local/Qt-5.12.4/qml
    QT_INSTALL_TRANSLATIONS:/usr/local/Qt-5.12.4/translations
    QT_INSTALL_CONFIGURATION:/usr/local/Qt-5.12.4/etc/xdg
    QT_INSTALL_EXAMPLES:/usr/local/Qt-5.12.4/examples
    QT_INSTALL_DEMOS:/usr/local/Qt-5.12.4/examples
    QT_HOST_PREFIX:/usr/local/Qt-5.12.4
    QT_HOST_DATA:/usr/local/Qt-5.12.4
    QT_HOST_BINS:/usr/local/Qt-5.12.4/bin
    QT_HOST_LIBS:/usr/local/Qt-5.12.4/lib
    QMAKE_SPEC:linux-g++
    QMAKE_XSPEC:linux-g++
    QMAKE_VERSION:3.1
    QT_VERSION:5.12.4
    
    

    Compiling a project having qml

    import QtQuick 2.12
    import QtQuick.Controls 2.5
    import QtQuick.Layouts 1.12
    
    debian@beaglebone:~/towsrc$ qmake
    Project ERROR: Unknown module(s) in QT: quick
    debian@beaglebone:~/towsrc$ 
    
    

    What is wrong. Thx


  • Lifetime Qt Champion

    Hi,

    You only built the qtbase module. You also have to compile at least qtdeclarative.



  • Hi,
    No such thing qtdeclarative

    debian@beaglebone:~/qtbase$ grep qtdeclara* Makefile 
    debian@beaglebone:~/qtbase$ 
    

    I also cloned https://github.com/qt/qtquickcontrols

    debian@beaglebone:~/qtquickcontrols2$ make
    Some of the required modules (qtHaveModule(quick)) are not available.
    Skipped.
    
    

  • Lifetime Qt Champion

    Because you are searching in qtbase.

    qtdeclarative is a different module.

    If you want to build from git, then you should follow this guide.



  • @SGaist

    The git I cloned has only qtbase. I was not aware that there is another git called qt5. The info is quite scattered all over the place.

    Thank you.
    Will try


  • Lifetime Qt Champion

    @comarius See "Getting the source code" section in https://wiki.qt.io/Building_Qt_5_from_Git



  • This post is deleted!


  • Hi,

    Thank you for all of your support. Finally building qt5/<all> gor beaglebone.



  • @comarius said in Project ERROR: Unknown module(s) in QT: quick:

    @SGaist

    The git I cloned has only qtbase. I was not aware that there is another git called qt5. The info is quite scattered all over the place.

    Thank you.
    Will try

    ...
    All good form the configuration point of view.

    The compilation fails asking for a feature library ?!?

    arm-linux-gnueabihf-g++ -c -pipe -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mthumb -fPIC -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mthumb -fPIC -mfloat-abi=hard --sysroot=/BOARDS/BBB_TOW/ti-linux-kernel-dev/deploy/targetNFS -O2 -O3 -std=c++1z -fvisibility=hidden -fvisibility-inlines-hidden -fno-exceptions -Wall -W -Wvla -Wdate-time -Wshift-overflow=2 -Wduplicated-cond -Wno-stringop-overflow -ffunction-sections -fdata-sections -D_REENTRANT -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_BUILD_SERIALPORT_LIB -DQT_BUILDING_QT -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x050000 -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_CORE_LIB -I. -I. -I../../include -I../../include/QtSerialPort -I../../include/QtSerialPort/5.12.4 -I../../include/QtSerialPort/5.12.4/QtSerialPort -I/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/5.12.4 -I/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/5.12.4/QtCore -I/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include -I/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore -I.moc -I/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/mkspecs/devices/linux-beagleboard-g++ -o .obj/qserialportinfo_unix.o qserialportinfo_unix.cpp
    In file included from /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/qglobal.h:1:0,
                     from /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/../../src/corelib/tools/qalgorithms.h:43,
                     from /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/qalgorithms.h:1,
                     from /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/../../src/corelib/tools/qlist.h:43,
                     from /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/qlist.h:1,
                     from qserialportinfo.h:44,
                     from qserialportinfo_unix.cpp:42:
    /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/../../src/corelib/global/qglobal.h:121:49: error: static assertion failed: Required feature library for file /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/../../src/corelib/plugin/qlibrary.h not available.
     #  define Q_STATIC_ASSERT_X(Condition, Message) static_assert(bool(Condition), Message)
                                                     ^
    /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/../../src/corelib/global/qglobal.h:87:36: note: in expansion of macro ‘Q_STATIC_ASSERT_X’
     #define QT_REQUIRE_CONFIG(feature) Q_STATIC_ASSERT_X(QT_FEATURE_##feature == 1, "Required feature " #feature " for file " __FILE__ " not available.")
                                        ^~~~~~~~~~~~~~~~~
    /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/../../src/corelib/plugin/qlibrary.h:45:1: note: in expansion of macro ‘QT_REQUIRE_CONFIG’
     QT_REQUIRE_CONFIG(library);
     ^~~~~~~~~~~~~~~~~
    Makefile:1354: recipe for target '.obj/qserialportinfo_unix.o' failed
    make[3]: *** [.obj/qserialportinfo_unix.o] Error 1
    make[3]: Leaving directory '/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtserialport/src/serialport'
    Makefile:46: recipe for target 'sub-serialport-make_first' failed
    make[2]: *** [sub-serialport-make_first] Error 2
    make[2]: Leaving directory '/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtserialport/src'
    Makefile:48: recipe for target 'sub-src-make_first' failed
    make[1]: *** [sub-src-make_first] Error 2
    make[1]: Leaving directory '/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtserialport'
    Makefile:211: recipe for target 'module-qtserialport-make_first' failed
    make: *** [module-qtserialport-make_first] Error 2
    
    

    Expansion of a Macro ?

    I am using

     arm-linux-gnueabihf-g++ --version
    arm-linux-gnueabihf-g++ (Linaro GCC 7.4-2019.02) 7.4.1 20181213 [linaro-7.4-2019.02 revision 56ec6f6b99cc167ff0c2f8e1a2eed33b1edc85d4]
    Copyright (C) 2017 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions.  There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    
    

    Do I need a newer version ?

    ... later on...
    I used different tool chains and I ran in the same error.
    I went over this link tool-chain script setup.
    Same error, then finally I tweak the macro in it's header file and now seems to compiling. I ongoing for last 15 minutes or so.



  • @comarius said in Project ERROR: Unknown module(s) in QT: quick:

    @comarius said in Project ERROR: Unknown module(s) in QT: quick:

    @SGaist

    The git I cloned has only qtbase. I was not aware that there is another git called qt5. The info is quite scattered all over the place.

    Thank you.
    Will try

    ...
    All good form the configuration point of view.

    The compilation fails asking for a feature library ?!?

    arm-linux-gnueabihf-g++ -c -pipe -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mthumb -fPIC -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mthumb -fPIC -mfloat-abi=hard --sysroot=/BOARDS/BBB_TOW/ti-linux-kernel-dev/deploy/targetNFS -O2 -O3 -std=c++1z -fvisibility=hidden -fvisibility-inlines-hidden -fno-exceptions -Wall -W -Wvla -Wdate-time -Wshift-overflow=2 -Wduplicated-cond -Wno-stringop-overflow -ffunction-sections -fdata-sections -D_REENTRANT -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_BUILD_SERIALPORT_LIB -DQT_BUILDING_QT -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x050000 -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_CORE_LIB -I. -I. -I../../include -I../../include/QtSerialPort -I../../include/QtSerialPort/5.12.4 -I../../include/QtSerialPort/5.12.4/QtSerialPort -I/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/5.12.4 -I/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/5.12.4/QtCore -I/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include -I/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore -I.moc -I/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/mkspecs/devices/linux-beagleboard-g++ -o .obj/qserialportinfo_unix.o qserialportinfo_unix.cpp
    In file included from /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/qglobal.h:1:0,
                     from /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/../../src/corelib/tools/qalgorithms.h:43,
                     from /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/qalgorithms.h:1,
                     from /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/../../src/corelib/tools/qlist.h:43,
                     from /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/qlist.h:1,
                     from qserialportinfo.h:44,
                     from qserialportinfo_unix.cpp:42:
    /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/../../src/corelib/global/qglobal.h:121:49: error: static assertion failed: Required feature library for file /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/../../src/corelib/plugin/qlibrary.h not available.
     #  define Q_STATIC_ASSERT_X(Condition, Message) static_assert(bool(Condition), Message)
                                                     ^
    /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/../../src/corelib/global/qglobal.h:87:36: note: in expansion of macro ‘Q_STATIC_ASSERT_X’
     #define QT_REQUIRE_CONFIG(feature) Q_STATIC_ASSERT_X(QT_FEATURE_##feature == 1, "Required feature " #feature " for file " __FILE__ " not available.")
                                        ^~~~~~~~~~~~~~~~~
    /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/include/QtCore/../../src/corelib/plugin/qlibrary.h:45:1: note: in expansion of macro ‘QT_REQUIRE_CONFIG’
     QT_REQUIRE_CONFIG(library);
     ^~~~~~~~~~~~~~~~~
    Makefile:1354: recipe for target '.obj/qserialportinfo_unix.o' failed
    make[3]: *** [.obj/qserialportinfo_unix.o] Error 1
    make[3]: Leaving directory '/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtserialport/src/serialport'
    Makefile:46: recipe for target 'sub-serialport-make_first' failed
    make[2]: *** [sub-serialport-make_first] Error 2
    make[2]: Leaving directory '/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtserialport/src'
    Makefile:48: recipe for target 'sub-src-make_first' failed
    make[1]: *** [sub-src-make_first] Error 2
    make[1]: Leaving directory '/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtserialport'
    Makefile:211: recipe for target 'module-qtserialport-make_first' failed
    make: *** [module-qtserialport-make_first] Error 2
    
    

    Expansion of a Macro ?

    I am using

     arm-linux-gnueabihf-g++ --version
    arm-linux-gnueabihf-g++ (Linaro GCC 7.4-2019.02) 7.4.1 20181213 [linaro-7.4-2019.02 revision 56ec6f6b99cc167ff0c2f8e1a2eed33b1edc85d4]
    Copyright (C) 2017 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions.  There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    
    

    Do I need a newer version ?

    ... later on...
    I used different tool chains and I ran in the same error.
    I went over this link tool-chain script setup.
    Same error, then finally I tweak the macro in it's header file and now seems to compiling. I ongoing for last 15 minutes or so.

    After few more tweaks I ran into this error. The libdl is on the rootFS in /lib and /usr/lib

    marius@pegpc:/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtdeclarative$ make
    cd src/ && ( test -e Makefile || /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/bin/qmake -o Makefile /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtdeclarative/src/src.pro ) && make -f Makefile 
    make[1]: Entering directory '/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtdeclarative/src'
    cd qml/ && ( test -e Makefile || /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/bin/qmake -o Makefile /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtdeclarative/src/qml/qml.pro ) && make -f Makefile 
    Project MESSAGE: perl -w /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/bin/syncqt.pl -module QtQml -version 5.12.4 -outdir /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtdeclarative -builddir /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtdeclarative /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtdeclarative
    <srcbase> = /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtdeclarative 
    <bldbase> = /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtdeclarative 
    <outbase> = /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtdeclarative 
    Project ERROR: Library 'libdl' is not defined.
    Makefile:55: recipe for target 'sub-qml-make_first-ordered' failed
    make[1]: *** [sub-qml-make_first-ordered] Error 3
    make[1]: Leaving directory '/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtdeclarative/src'
    Makefile:49: recipe for target 'sub-src-make_first' failed
    make: *** [sub-src-make_first] Error 2
    
    
    

    Upon several tweaks in some configuration files taken from this post above error was fixed.

    Though now I am running into this error.

    cd qml/ && ( test -e Makefile || /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/bin/qmake -o Makefile /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtdeclarative/tools/qml/qml.pro ) && make -f Makefile clean
    sh: 1: /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtdeclarative/bin/qmlimportscanner: not found
    /BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtbase/mkspecs/features/qt.prf:285: Error parsing JSON at 1:1: illegal value
    Project ERROR: Failed to parse qmlimportscanner output.
    Makefile:158: recipe for target 'sub-qml-clean' failed
    make[2]: *** [sub-qml-clean] Error 3
    make[2]: Leaving directory '/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtdeclarative/tools'
    Makefile:80: recipe for target 'sub-tools-clean' failed
    make[1]: *** [sub-tools-clean] Error 2
    make[1]: Leaving directory '/BOARDS/BBB_TOW/ti-linux-kernel-dev/qt5/qtdeclarative'
    Makefile:305: recipe for target 'module-qtdeclarative-clean' failed
    make: *** [module-qtdeclarative-clean] Error 2
    
    

Log in to reply