AnsweredAssumed Answered

Errors when cross compile Qt5 for imx6q with opengles

Question asked by zhang zhang on May 14, 2019
Latest reply on May 17, 2019 by zhang zhang

Hello,

       I'm building the Qt5.6.2 for my imx6q board with OpenGL ES. When configure the Qt ,The OpenGL ES 2.0 functionality test failed!

 

checking for OpenGL ES 2.0...
/home/openil/openil-OpenIL-201810/output/host/usr/bin/arm-linux-gnueabihf-g++ -c -pipe -march=armv7-a -mfpu=neon -DLINUX=1 -DEGL_API_FB=1 -mfloat-abi=hard -O2 -Wall -W -fPIC -I. -I/home/qt5.6.2/imx-gpu-viv-5.0.11.p8.6-hfp/gpu-core/usr/include -I../../../mkspecs/devices/linux-imx6-g++ -o opengles2.o opengles2.cpp
/home/openil/openil-OpenIL-201810/output/host/usr/bin/arm-linux-gnueabihf-g++ -mfloat-abi=hard -Wl,-O1 -o opengles2 opengles2.o -L/home/qt5.6.2/imx-gpu-viv-5.0.11.p8.6-hfp/gpu-core/usr/lib -lGLESv2 -lEGL -lGAL
/home/openil/openil-OpenIL-201810/output/host/opt/ext-toolchain/bin/../lib/gcc/arm-linux-gnueabihf/6.2.1/../../../../arm-linux-gnueabihf/bin/ld: warning: libVSC.so, needed by /home/qt5.6.2/imx-gpu-viv-5.0.11.p8.6-hfp/gpu-core/usr/lib/libGLESv2.so, not found (try using -rpath or -rpath-link)

 

OpenGL ES 2.0 disabled.
The OpenGL ES 2.0 functionality test failed!
Use of pkg-config is not enabled, maybe you want to pass -pkg-config?
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/qt5.6.2/qt-everywhere-opensource-src-5.6.2/qtbase/mkspecs/devices/linux-imx6-g++.

 

the configure order is:

./configure -v -prefix /opt/qt5.6.2_imx6 -no-gcc-sysroot -opensource -confirm-license -qt-libpng -qt-libjpeg -qt-freetype -qt-pcre -no-directfb -linuxfb -no-kms -eglfs -qpa eglfs -opengl es2 -device imx6 -device-option CROSS_COMPILE=/home/openil/openil-OpenIL-201810/output/host/usr/bin/arm-linux-gnueabihf-

 

the  qtbase/mkspecs/devices/linux-imx6-g++/qmake.conf is:

include(../common/linux_device_pre.conf)

QMAKE_LIBS_EGL += -lEGL -lGAL
QMAKE_LIBS_OPENGL_ES2 += -lGLESv2 -lEGL -lGAL
QMAKE_LIBS_OPENVG += -lOpenVG -lEGL -lGAL

IMX6_CFLAGS = -march=armv7-a -mfpu=neon -DLINUX=1 -DEGL_API_FB=1
QMAKE_CFLAGS += $$IMX6_CFLAGS
QMAKE_CXXFLAGS += $$IMX6_CFLAGS

QMAKE_INCDIR_OPENGL_ES2 = /home/qt5.6.2/imx-gpu-viv-5.0.11.p8.6-hfp/gpu-core/usr/include
QMAKE_LIBDIR_OPENGL_ES2 = /home/qt5.6.2/imx-gpu-viv-5.0.11.p8.6-hfp/gpu-core/usr/lib

QMAKE_INCDIR_EGL = /home/qt5.6.2/imx-gpu-viv-5.0.11.p8.6-hfp/gpu-core/usr/include
QMAKE_LIBDIR_EGL = /home/qt5.6.2/imx-gpu-viv-5.0.11.p8.6-hfp/gpu-core/usr/lib

DISTRO_OPTS += hard-float

# Preferred eglfs backend
EGLFS_DEVICE_INTEGRATION = eglfs_viv

include(../common/linux_arm_device_post.conf)

load(qt_config)

 

 

I have changed the gpu driver versions with imx-gpu-viv-5.0.11.p4.4-hfp、imx-gpu-viv-5.0.11.p8.4-hfp, but the reasult is the same error.

Can anyone know how to resolve this ?  Thank you.

 

Zhang

Outcomes