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

Building Qt5 for Embedded Linux ARM - compiler problems



  • Hi,

    I read "this...":http://labs.qt.nokia.com/2011/10/03/chasing-the-raspberry-pi-dragon-opengl-es2-accelerated-qt-pi/ labs post, but I couldn't figure out how build Qt5 for ARM with embedded linux. My main problem is that I don't know which compiler to use.

    That's how my configure looks like:
    @./configure -opensource -arch arm -xplatform ??????? -release -opengl es2 -little-endian -nomake docs -no-svg -no-audio-backend -no-multimedia -no-xmlpatterns -no-v8 -no-location -no-declarative -no-cups -xcb -no-wayland -no-phonon -no-qt3support -no-webkit -no-javascript-jit -no-neon -confirm-license -verbose -qpa -no-gtkstyle @

    I read already this thread: "[Solved] Qt5 on linux arm - xcb platform plugin not working":http://developer.qt.nokia.com/forums/viewthread/10466/
    but I don't know where exactly and how he got the linux-g++-mx5x compiler.

    Any ideas?
    Thanks



  • Ok, I made some progress in trying to build Qt5 for ARM (it's actually the iMX53 from Freescale). I am using the toolchain and some libraries of freescale, that they provide with LTIB (linux target image builder).

    And I am using a modified qmake.conf in mkspecs (linux-g++-mx5x).

    The problem right now is that some libraries aren't found. Some of them do excist and some not. These are the missing libs, with the location where I found them by myself:

    tiffio.h (found in /home/qt5/qtbase/src/3rdparty/libtiff)
    libmng.h (found in /home/qt5/qtbase/src/3rdparty/libmng)
    sqlcli.h -
    sqlcli1.h -
    ibase.h (found in /home/qt5/qtbase/include/QtSql)
    oci.h (found in /home/qt5/qtbase/include/QtSql)
    sql.h (found in /home/qt5/qtbase/include/QtSql)
    sqlext.h -
    libpq-fe.h -
    sqlite.h (found in /home/qt5/qtbase/include/QtSql)
    sybfront.h -
    sybdb.h -
    unicode/utypes.h (found in /usr/include/unicode)
    unicode/ucol.h (found in /usr/include/unicode)
    unicode/ustring.h (found in /usr/include/unicode)
    pulse/pulseaudio.h -
    pulse/glib-mainloop.h -

    Additionaly the arm-none-linux-gnueabi-g++ compiler does not recognize the following arguments:
    -mmx
    -m3dnow
    -msse
    -msse2
    -msse3
    -mssse3
    -msse4.1
    -msse4.2
    -mavx
    -lxcb

    That's a part of the output of the building process (look the attached output of the configure command, to view all of the error messages):
    /opt/freescale/usr/local/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-none-linux-gnueabi-g++ -c -pipe -mmmx -g -Wall -W -I../../../mkspecs/linux-g++-mx5x -I. -I/home/lucid/imx/11.09/ltib/rootfs/usr/include -I/home/lucid/imx/11.09/ltib/rootfs/usr/include/glib-2.0 -I/tftpboot/ltib/usr/lib/glib-2.0/include -I/tftpboot/ltib/usr/include/gstreamer-0.10 -I/tftpboot/ltib/usr/include/libxml2 -I/home/lucid/imx/11.09/ltib/rootfs/usr/include/freetype2 -I/home/lucid/imx/11.09/ltib/rootfs/usr/include/mysql -I/opt/freescale/usr/local/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/lib/gcc/arm-fsl-linux-gnueabi/4.4.4/include -o mmx.o mmx.cpp
    cc1plus: error: unrecognized command line option "-mmmx"
    make: *** [mmx.o] Error 1
    mmx disabled.

    I tried to do it like this:
    QMAKE_LFLAGS_RPATH = -Wl,-rpath,
    QMAKE_RPATHDIR += "/tftpboot/ltib/usr/lib"
    QMAKE_RPATHDIR += "/tftpboot/ltib/usr/local/lib"
    QMAKE_RPATHDIR += "/tftpboot/ltib/lib"

    but this approach didn't work.

    Does anyone know how to include the correct paths into the qmake.conf?

    Thanks


Log in to reply