Building Qt for imx233-Olinuxino on Ubuntu 14.04 with different gcc versions



  • I'm building Qt with two gcc versions: arm-linux-gnueabi (from repository, 4.7.3) and generated by crosstool-ng (5.1.0).
    The latter succeeds while the former fails during configuring with the following messages:

    OpenGL auto-detection... ()
    arm-linux-gnueabi-g++ -c -pipe -pipe -mcpu=arm926ej-s -marm -mfloat-abi=soft --sysroot=/home/alexandr/armv5/sysroot -O2 -Wall -W -fPIC  -I/home/alexandr/Qt/5.5/Src/qtbase/config.tests/unix/opengles2 -I. -I/home/alexandr/Qt/5.5/Src/qtbase/mkspecs/devices/linux-imx233-g++ -o opengles2.o /home/alexandr/Qt/5.5/Src/qtbase/config.tests/unix/opengles2/opengles2.cpp
    arm-linux-gnueabi-g++ -mfloat-abi=soft -Wl,-O1 -o opengles2 opengles2.o   --sysroot=/home/alexandr/armv5/sysroot -lGLESv2 
    /home/alexandr/armv5/sysroot/lib/libpthread.so.0: undefined reference to `__default_rt_sa_restorer@GLIBC_PRIVATE'
    /home/alexandr/armv5/sysroot/lib/libpthread.so.0: undefined reference to `__tfind@GLIBC_PRIVATE'
    /home/alexandr/armv5/sysroot/lib/libpthread.so.0: undefined reference to `__tdelete@GLIBC_PRIVATE'
    /home/alexandr/armv5/sysroot/lib/libpthread.so.0: undefined reference to `__twalk@GLIBC_PRIVATE'
    /home/alexandr/armv5/sysroot/lib/libpthread.so.0: undefined reference to `__default_sa_restorer@GLIBC_PRIVATE'
    /home/alexandr/armv5/sysroot/lib/libpthread.so.0: undefined reference to `__getrlimit@GLIBC_PRIVATE'
    /home/alexandr/armv5/sysroot/lib/libpthread.so.0: undefined reference to `__h_errno@GLIBC_PRIVATE'
    /home/alexandr/armv5/sysroot/lib/libpthread.so.0: undefined reference to `__tsearch@GLIBC_PRIVATE'
    /home/alexandr/armv5/sysroot/lib/libpthread.so.0: undefined reference to `__libc_vfork@GLIBC_PRIVATE'
    collect2: error: ld returned 1 exit status
    make: *** [opengles2] Error 1
    OpenGL disabled.
    The OpenGL ES 2.0 functionality test failed!
     You might need to modify the include and library search paths by editing
     QMAKE_INCDIR_OPENGL_ES2, QMAKE_LIBDIR_OPENGL_ES2 and QMAKE_LIBS_OPENGL_ES2 in
     /home/alexandr/Qt/5.5/Src/qtbase/mkspecs/devices/linux-imx233-g++.
    

    The configure command was:

    ../Src/configure -release -device linux-imx233-g++ -device-option CROSS_COMPILE=arm-linux-gnueabi- -prefix $PWD/qtbase -opensource --confirm-license -opengl es2 -v -sysroot ~/armv5/sysroot -nomake examples
    

    The qmake.conf for my device basically defines the CPU:

    #
    # qmake configuration for linux-imx233-g++ using the arm-linux-gnueabi-g++ crosscompiler
    #
    
    include(../common/linux_device_pre.conf)
    
    QMAKE_CFLAGS   += -mcpu=arm926ej-s -marm
    QMAKE_CXXFLAGS += $$QMAKE_CFLAGS
    
    include(../common/linux_arm_device_post.conf)
    
    load(qt_config)
    

    Why does gcc 4.7.3 fail? Is it some kind of incompatibility of older versions of gcc?


  • Lifetime Qt Champion

    Hi,

    4.7.3 vs 5.1.0 are a bit too far apart


Log in to reply
 

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