Qt 5.4.0 for i.MX6 - Configuration Failure

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Qt 5.4.0 for i.MX6 - Configuration Failure

2,544 Views
NathanJozwiak
Contributor III

Hi all,

I'm trying to build Qt 5.4.0 for the i.MX6 and am having some issues right out of the gate with configuration. I have a rootfs built from the FSL Yocto BSP (Dizzy) that I am using. It is an unmodified rootfs built from the fsl-image-multimedia image and contains libraries and headers for GLES2, EGL, GAL, etc.

I am using the 2013.10 Linaro HF toolchain: @gcc-linaro-arm-linux-gnueabihf-4.8-2013.10@

Here is my qmake.conf file (mostly the same as the default one but included flags for OpenGL stuff):

include(../common/linux_device_pre.conf)

EGLFS_PLATFORM_HOOKS_SOURCES = $$PWD/qeglfshooks_imx6.cpp

QMAKE_INCDIR           += $$[QT_SYSROOT]/usr/include

QMAKE_LIBDIR           += $$[QT_SYSROOT]/usr/lib

QMAKE_INCDIR_OPENGL     = $$[QT_SYSROOT]/usr/include/GL

QMAKE_LIBDIR_OPENGL     = $$[QT_SYSROOT]/usr/lib

QMAKE_INCDIR_OPENGL_ES2 = $$[QT_SYSROOT]/usr/include/GLES2

QMAKE_LIBDIR_OPENGL_ES2 = $$[QT_SYSROOT]/usr/lib

QMAKE_INCDIR_EGL        = $$[QT_SYSROOT]/usr/include/GL

QMAKE_LIBDIR_EGL        = $$[QT_SYSROOT]/usr/lib

QMAKE_LIBS_EGL         += -lEGL

QMAKE_LIBS_OPENGL_ES2  += -lGLESv2 -lEGL -lGAL

QMAKE_LIBS_OPENVG      += -lOpenVG -lEGL -lGAL

QMAKE_LFLAGS           += -Wl,-rpath-link,$$[QT_SYSROOT]/usr/lib

IMX6_CFLAGS             = -march=armv7-a -mfpu=neon -mfloat-abi=hard -DLINUX=1 -DEGL_API_FB=1

QMAKE_CFLAGS           += $$IMX6_CFLAGS

QMAKE_CXXFLAGS         += $$IMX6_CFLAGS

include(../common/linux_arm_device_post.conf)

load(qt_config)

And my configure line:

configure -v -opensource -confirm-license

-device imx6

-device-option CROSS_COMPILE=/opt/ti/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10/bin/arm-linux-gnueabihf-

-no-pch

-no-xcb

-opengl es2

-make libs

-sysroot /projects/client/imx6/rootfs -no-gcc-sysroot

-prefix /opt/qt-5.4.0-imx6

The configuration is failing with the following errors:

OpenGL ES 2.0 auto-detection... ()

/opt/ti/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10/bin/arm-linux-gnueabihf-g++ -c -pipe -march=armv7-a -mfpu=neon -mfloat-abi=hard -DLINUX=1 -DEGL_API_FB=1 -mfloat-abi=softfp -O2 -Wall -W -fPIE  -I/opt/qt-everywhere-opensource-src-5.4.0/qtbase/mkspecs/devices/linux-imx6-g++ -I/opt/qt-everywhere-opensource-src-5.4.0/qtbase/config.tests/unix/opengles2 -I/projects/client/imx6/rootfs/usr/include/libdrm -I/projects/client/imx6/rootfs/usr/include/GLES2 -I/projects/client/imx6/rootfs/usr/include -I. -o opengles2.o /opt/qt-everywhere-opensource-src-5.4.0/qtbase/config.tests/unix/opengles2/opengles2.cpp

/opt/ti/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10/bin/arm-linux-gnueabihf-g++ -Wl,-rpath-link,/projects/client/imx6/rootfs/usr/lib -Wl,-O1 -o opengles2 opengles2.o   -L/projects/client/imx6/rootfs/usr/lib -lGLESv2 -lEGL -lGAL

/opt/ti/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10/bin/../lib/gcc/arm-linux-gnueabihf/4.8.2/../../../../arm-linux-gnueabihf/bin/ld: cannot find /lib/libc.so.6

/opt/ti/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10/bin/../lib/gcc/arm-linux-gnueabihf/4.8.2/../../../../arm-linux-gnueabihf/bin/ld: cannot find /usr/lib/libc_nonshared.a

/opt/ti/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10/bin/../lib/gcc/arm-linux-gnueabihf/4.8.2/../../../../arm-linux-gnueabihf/bin/ld: cannot find /lib/ld-linux-armhf.so.3

collect2: error: ld returned 1 exit status

make: *** [opengles2] 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

/opt/qt-everywhere-opensource-src-5.4.0/qtbase/mkspecs/devices/linux-imx6-g++.

Note that all of those libraries exist in paths that are included on the g++ line:

user@ubuntu:/projects/client/imx6/rootfs$ find . -name "libc.so.6"

./lib/libc.so.6

user@ubuntu:/projects/client/imx6/rootfs$ find . -name "libc_nonshared.a"

./usr/lib/libc_nonshared.a

user@ubuntu:/projects/client/imx6/rootfs$ find . -name "ld-linux-armhf.so.3"

./lib/ld-linux-armhf.so.3

Any ideas?

Labels (4)
Tags (4)
0 Kudos
2 Replies

606 Views
darknighte
Contributor I

Nathan,

  I've recently encountered something with a similar signature that I'm working to resolve and found this thread.  However, the question is still marked as unanswered.  Did you ever resolve the issue?

0 Kudos

606 Views
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hi Nathan,

I guess you should remove -no-gcc-sysroot from your configuration line.

lets us know if this works for you.

Regards

0 Kudos