QT 5.9 for i.MX6Q and Integrity RTOS build error - unrecognised command line option »-std=c++11«



  • Hello,

    I am trying to port QT 5.9 with Sabreauto board(i.MX6Q) and Integrity RTOS.

    I'm quite new to QT, so I checked out QT5.9 using :

    git clone git://code.qt.io/qt/qt5.git
    cd qt5
    git checkout 5.9
    git submodule update --init qtbase qtimageformats qtsvg qtxmlpatterns qtdeclarative qtquickcontrols qtquickcontrols2

    And running configure from build directory:

    $../qt5/configure -developer-build -xplatform integrity-armv7-imx6 -confirm-license -opensource -nomake examples -nomake tests -no-dbus -silent -no-opengl -static -prefix /home/uidp5510/Project/qt_targetfs

    getting the following error:

    Preparing build tree...
    <srcbase> = /home/uidp5510/qt5/qtbase
    <outbase> = /home/uidp5510/qt5build/qtbase
    Creating qmake...
    cc1plus: Fehler: unrecognised command line option »-std=c++11«
    make: *** [project.o] Fehler 1

    Please tell me, what i must change in order to build QT5.9 without »-std=c++11« error?
    which compiler I must use, either gcc latest version or greenhills multi compiler?

    Hint: My machine have g++ (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3 as default.

    Thanks.

    EDIT: Host OS - Ubuntu 12.04.5 LTS




  • Moderators

    @Mahesh-Kumar-Kodanda Your compiler does not support C++11 which is a requirement for Qt 5.9 (and 5.8). You either need to get a newer compiler (4.9) or use older Qt version.



  • Thanks for the reply, I upgraded to Ubuntu 16.04 which have "gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4)".

    there is no »-std=c++11« error but i have the following error when I ran configure from /qtbuild directory:.

    ../qt5/configure -developer-build -xplatform integrity-armv7-imx6 -confirm-license -opensource -nomake examples -nomake tests -no-dbus -silent -no-opengl –static –prefix /home/uidp5510/project/qt_on_integrity/targetfs

    Creating qmake...
    Done.
    Info: creating super cache file /home/uidp5510/project/qt_on_integrity/qt5build/.qmake.super
    ERROR: Invalid command line parameter '–static'.

    Is this variable -static used to build "static libraries"?


  • Moderators

    @Mahesh-Kumar-Kodanda It looks like you have two - in front of static
    Yes, -static is used to build static libs



  • @jsulm You are right, that solved issue..but i cannot compile minimal program.

    qtbase/mkspecs/features/toolchain.prf:129: Variable QMAKE_CXX.COMPILER_MACROS is not defined.

    ERROR: Cannot compile a minimal program. The toolchain or QMakeSpec is broken.

    Check config.log for details.

    config.log:

    Command line: -developer-build -xplatform integrity-armv7-imx6 -confirm-license -opensource -nomake examples -nomake tests -no-dbus -silent -no-opengl -static -prefix /home/uidp5510/project/qt_on_integrity/targetfs
    executing config test verifyspec
    + cd /home/uidp5510/project/qt_on_integrity/qt5build/qtbase/config.tests/common/verifyspec && /home/uidp5510/project/qt_on_integrity/qt5build/qtbase/bin/qmake "CONFIG -= qt debug_and_release app_bundle lib_bundle" "CONFIG += static console single_arch" -early "CONFIG += cross_compile" /home/uidp5510/project/qt_on_integrity/qt5/qtbase/config.tests/common/verifyspec
    > /home/uidp5510/project/qt_on_integrity/qt5/qtbase/mkspecs/features/toolchain.prf:129: Variable QMAKE_CXX.COMPILER_MACROS is not defined.
    + cd /home/uidp5510/project/qt_on_integrity/qt5build/qtbase/config.tests/common/verifyspec && MAKEFLAGS= /usr/bin/make
    > cxintarm -bsp -os_dir -non_shared -c --signed_fields --no_commons --diag_suppress=1,82,228,236,381,611,961,997,1795,1974 --no_implicit_include --link_once_templates -non_shared --new_outside_of_constructor -DINTEGRITY -Ospeed -Olink -Omax --exceptions -DQT_STATICPLUGIN -I/home/uidp5510/project/qt_on_integrity/qt5/qtbase/config.tests/common/verifyspec -I. -I/home/uidp5510/project/qt_on_integrity/qt5/qtbase/mkspecs/integrity-armv7-imx6 -o verifyspec.o /home/uidp5510/project/qt_on_integrity/qt5/qtbase/config.tests/common/verifyspec/verifyspec.cpp
    > make: cxintarm: Command not found
    > Makefile:158: recipe for target 'verifyspec.o' failed
    > make: *** [verifyspec.o] Error 127
    

    Please provide if there is any document which explains "what and all parameters shall be set to build minimal demo image?"


  • Moderators

    @Mahesh-Kumar-Kodanda Do you really need a static build?



  • @jsulm I need to build a demo image to run on i.mx6Q sabreauto board with Integrity RTOS, greenhills suggested static build.
    So, i am trying to build that way. You mean the above error is because of static build?

    Update: Integrity supports only static builds.


  • Moderators

    @Mahesh-Kumar-Kodanda Why does Integrity not support shared libraries? Any system I know does.
    The error message says that cxintarm is not found. I'm not sure what it is, it looks like it belongs to Integrity tool chain - you should ask them.



  • @jsulm I will contact Greenhills regarding this, Could you please post cross compile tool chain link for QT 5.9?


  • Moderators

    @Mahesh-Kumar-Kodanda said in QT 5.9 for i.MX6Q and Integrity RTOS build error - unrecognised command line option »-std=c++11«:

    cross compile tool chain

    For which device? You already use one- why do you ask me to provide one? A cross compile tool chain is not specific to Qt or any other framework/library but to a device.



Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.