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

The OpenGL ES 2.0 functionality test failed



  • When I cross-compiled qt5.6.1 for my arm board, I got the following error:

    OpenGL ES 2.0 auto-detection... ()
    arm-arago-linux-gnueabi-g++ -c -pipe -O2 -Wall -W -fPIC -I. -I/home/smallbird/tslib1.4/include -I/usr/opengles2/include/GLES2 -I/usr/opengles2/include/GLES2 -I../../../mkspecs/linux-arm-gnueabi-g++ -o opengles2.o openglesp
    arm-arago-linux-gnueabi-g++: error trying to exec 'cc1plus': execvp: No such file or directory
    as: unrecognized option '-mfloat-abi=softfp'
    Makefile:177: recipe for target 'opengles2.o' failed
    make: *** [opengles2.o] Error 1
    OpenGL ES 2.0 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
    /usr/qt-everywhere-opensource-src-5.6.1/qtbase/mkspecs/linux-arm-gnueabi-g++.

    However, I have already designated the Include and Library path and the header files and library files are got through the way that I cross-compiled mesa-12.
    Many people have came across this kind of problem ! Does anyone know the reason ?
    Hope this topic can help more people !
    Thanks in advance !


  • Lifetime Qt Champion

    @small_bird These directories are on your host PC:

    -I/usr/opengles2/include/GLES2 -I/usr/opengles2/include
    

    you need to use those from your sysroot.



  • @jsulm I know what you mean. However, the compiler has found the headers and the libraries. Why it still tell me that I need to designate the path variables ?


  • Lifetime Qt Champion

    @small_bird The actual issue is this:

    arm-arago-linux-gnueabi-g++: error trying to exec 'cc1plus': execvp: No such file or directory
    as: unrecognized option '-mfloat-abi=softfp'
    

    I don't know why this happens.
    arm-arago-linux-gnueabi-g++: error trying to exec 'cc1plus': execvp: No such file or directory - looks like the C++ compiler is not found.
    as: unrecognized option '-mfloat-abi=softfp' - looks like the wrong assembler (x86) is called.

    Is your build environment broken? How do you call configure?



  • @jsulm

    #!/bin/sh
    ./configure
    -v
    -prefix /home/smallbird/qt5.6.1
    -release
    -continue
    -confirm-license
    -plugin-sql-sqlite
    -qt-libjpeg
    -qt-libpng
    -qt-zlib
    -opengl es2
    -no-c++11
    -qpa xcb
    -qt-xcb
    -opensource
    -xplatform linux-arm-gnueabi-g++
    -force-pkg-config
    -make examples
    -no-dbus
    -pkg-config
    -qt-freetype
    -qt-pcre
    -I/home/smallbird/tslib1.4/include
    -L/home/smallbird/tslib1.4/lib
    exit

    This is my configuration.


  • Lifetime Qt Champion

    @small_bird said in The OpenGL ES 2.0 functionality test failed:

    -sysroot /

    "-sysroot /"? So, your host PC file-system is your sysroot? This is for sure not going to work.



  • @jsulm Sorry for that, I have corrected it.



  • @jsulm
    But you really remind me of some method.
    There is some option that could change the configuration: -mfloat-abi=softfp.



  • @jsulm
    But you really remind me of some method.
    There is some option that could change the configuration: -mfloat-abi=softfp.
    It is -qreal option. However, it can only change the qreal type.
    Then how to solve the problem ?


  • Lifetime Qt Champion

    @small_bird The first problem to solve is:

    arm-arago-linux-gnueabi-g++: error trying to exec 'cc1plus': execvp: No such file or directory
    

    It looks like something is wrong with your build environment. Are you able to build a simple C++ program with this environment?



  • @jsulm No, I can not build c++ program. The error is the same !


  • Lifetime Qt Champion

    @small_bird Then I would say your build environment (compiler) is broken.



  • @jsulm Yes, I am checking for that. However, gcc compiler is all right.


Log in to reply