Unsolved bitbake meta-toolchain-qt5 for Raspberry Pi board.
-
I have a working Yocto 2.1 Krogoth line with Qt 5.6.2 version. I have built an image for Nitrogen6x board, and was able to successfully extract the Qt5 toolchain & SDK and developed a working Qt application to run on Nitrogen board. Now, I wanted to use the same Yocto and Qt support to be built for Raspberry Pi 2 board, and have the same application to run on Raspberry Pi board to verify that the Yocto line I created will work on multiple hardware platforms.
I have made the necessary changes in local.conf and was able to build an image for Raspberry Pi board, I have got the Yocto OS boot on Raspberry pi board. In order to build my Qt application for
Raspberry Pi board, I tried to extract the Qt5 toolchain by running the below command (same way that I followed for Nitrogen board).bitbake meta-toolchain-qt5
but, my build was failed with the below errors:
/home/krogoth-next/rpi-build/tmp/work/cortexa7hf-neon-vfpv4-poky-linux-gnueabi/qtbase/5.6.2+gitAUTOINC+b4ada3f0d8-r0/git/configure: 1: /home/krogoth-next/rpi-build/tmp/work/cortexa7hf-neon-vfpv4-poky-linux-gnueabi/qtbase/5.6.2+gitAUTOINC+b4ada3f0d8-r0/git/configure: /home/krogoth-next/rpi-build/tmp/work/cortexa7hf-neon-vfpv4-poky-linux-gnueabi/qtbase/5.6.2+gitAUTOINC+b4ada3f0d8-r0/git/config.tests/unix/makeabs: not found Performing shadow build... Preparing build tree... Running configuration tests (phase 1)... WARNING: Unable to find file /home/krogoth-next/rpi-build/tmp/work/cortexa7hf-neon-vfpv4-poky-linux-gnueabi/qtbase/5.6.2+gitAUTOINC+b4ada3f0d8-r0/git/mkspecs/linux-oe-g++/../oe-device-extra.pri WARNING: Unable to find file /home/krogoth-next/rpi-build/tmp/work/cortexa7hf-neon-vfpv4-poky-linux-gnueabi/qtbase/5.6.2+gitAUTOINC+b4ada3f0d8-r0/git/mkspecs/linux-oe-g++/../oe-device-extra.pri arm-poky-linux-gnueabi-g++ -march=armv7ve -marm -mfpu=neon-vfpv4 -mfloat-abi=hard -mcpu=cortex-a7 --sysroot=/home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2 -c -fvisibility=hidden fvisibility.c Symbol visibility control enabled. /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-ld.gold: error: cannot open crt1.o: No such file or directory /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-ld.gold: error: cannot open crti.o: No such file or directory /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-ld.gold: error: cannot open crtbegin.o: No such file or directory /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-ld.gold: error: cannot open crtend.o: No such file or directory /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-ld.gold: error: cannot open crtn.o: No such file or directory /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-ld.gold: error: cannot find -lgcc /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-ld.gold: error: cannot find -lgcc /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-ld.gold: error: cannot find -lgcc /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-ld.gold: error: cannot find -lgcc /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-ld.gold: error: /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libstdc++.so uses VFP register arguments, output does not /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-ld.gold: error: /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libm.so uses VFP register arguments, output does not /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-ld.gold: error: /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/lib/libgcc_s.so.1 uses VFP register arguments, output does not /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-ld.gold: error: /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/lib/libc.so.6 uses VFP register arguments, output does not /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-ld.gold: error: /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/lib/ld-linux-armhf.so.3 uses VFP register arguments, output does not collect2: error: ld returned 1 exit status arm-poky-linux-gnueabi-g++ -march=armv7ve -marm -mfpu=neon-vfpv4 -mfloat-abi=hard -mcpu=cortex-a7 --sysroot=/home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2 -o libtest.so -shared -Wl,-Bsymbolic-functions -fPIC bsymbolic_functions.c bsymbolic_functions.c:2:2: error: #error "Symbolic function binding on this architecture may be broken, disabling it (see QTBUG-36129)." #error "Symbolic function binding on this architecture may be broken, disabling it (see QTBUG-36129)." ^ Symbolic function binding disabled. DEFAULT_INCDIRS="/home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/include/c++/5.3.0 /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/include/c++/5.3.0/arm-poky-linux-gnueabi /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/include/c++/5.3.0/backward /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/lib/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/5.3.0/include /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/gcc/arm-poky-linux-gnueabi/5.3.0/include /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/lib/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/5.3.0/include-fixed /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/include " DEFAULT_LIBDIRS="/home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/lib/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/5.3.0 /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/lib /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/arm-poky-linux-gnueabi/5.3.0 " Done running configuration tests. <srcbase> = /home/krogoth-next/rpi-build/tmp/work/cortexa7hf-neon-vfpv4-poky-linux-gnueabi/qtbase/5.6.2+gitAUTOINC+b4ada3f0d8-r0/git <outbase> = /home/krogoth-next/rpi-build/tmp/work/cortexa7hf-neon-vfpv4-poky-linux-gnueabi/qtbase/5.6.2+gitAUTOINC+b4ada3f0d8-r0/build Creating qmake... WARNING: Unable to find file /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/lib/qt5/mkspecs/linux-oe-g++/../oe-device-extra.pri WARNING: Unable to find file /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/lib/qt5/mkspecs/linux-oe-g++/../oe-device-extra.pri WARNING: Unable to find file /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/lib/qt5/mkspecs/linux-oe-g++/../oe-device-extra.pri WARNING: Unable to find file /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/lib/qt5/mkspecs/linux-oe-g++/../oe-device-extra.pri WARNING: Unable to find file /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/lib/qt5/mkspecs/linux-oe-g++/../oe-device-extra.pri WARNING: Unable to find file /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/lib/qt5/mkspecs/linux-oe-g++/../oe-device-extra.pri WARNING: Unable to find file /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/lib/qt5/mkspecs/linux-oe-g++/../oe-device-extra.pri WARNING: Unable to find file /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/lib/qt5/mkspecs/linux-oe-g++/../oe-device-extra.pri WARNING: Unable to find file /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/lib/qt5/mkspecs/linux-oe-g++/../oe-device-extra.pri WARNING: Unable to find file /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/lib/qt5/mkspecs/linux-oe-g++/../oe-device-extra.pri make: Nothing to be done for `first'. Running configuration tests (phase 2)... Found pkg-config from $PATH: /home/krogoth-next/rpi-build/tmp/sysroots/i686-linux/usr/bin/pkg-config Determining architecture... () arm-poky-linux-gnueabi-g++ -march=armv7ve -marm -mfpu=neon-vfpv4 -mfloat-abi=hard -mcpu=cortex-a7 --sysroot=/home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2 -c -pipe -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=/home/krogoth-next/rpi-build/tmp/work/cortexa7hf-neon-vfpv4-poky-linux-gnueabi/qtbase/5.6.2+gitAUTOINC+b4ada3f0d8-r0=/usr/src/debug/qtbase/5.6.2+gitAUTOINC+b4ada3f0d8-r0 -fdebug-prefix-map=/home/krogoth-next/rpi-build/tmp/sysroots/i686-linux= -fdebug-prefix-map=/home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2= -fvisibility-inlines-hidden -g -Wall -W -fPIC -I../../../git/config.tests/arch -I. -I../../../git/mkspecs/linux-oe-g++ -o arch.o ../../../git/config.tests/arch/arch.cpp arm-poky-linux-gnueabi-g++ -march=armv7ve -marm -mfpu=neon-vfpv4 -mfloat-abi=hard -mcpu=cortex-a7 --sysroot=/home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2 -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o arch arch.o Found architecture in binary CFG_CPUFEATURES=" neon" CFG_ARCH="arm" Determining architecture... () * * * ^ arm-poky-linux-gnueabi-g++ -march=armv7ve -marm -mfpu=neon-vfpv4 -mfloat-abi=hard -mcpu=cortex-a7 --sysroot=/home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2 -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,-O1 -o egl egl.o -lGLESv2 -lvchostif -lbcm_host -lvcos -lvchiq_arm -pthread -lEGL /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glxx_client_GetRenderbufferParameteriv' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `gl20_client_state_init' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `gl11_client_state_init' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glintAttribPointer' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glxx_client_GenFramebuffers' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glxx_buffer_info_get' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glDiscardFramebufferEXT' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glxx_client_FramebufferTexture2D' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glxx_client_IsRenderbuffer' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glxx_set_error' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glxx_client_BindFramebuffer' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glxx_client_GenRenderbuffers' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glxx_set_error_api' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glxx_client_BindRenderbuffer' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glBufferSubData' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glxx_client_GetFramebufferAttachmentParameteriv' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glxx_client_CheckFramebufferStatus' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glxx_client_FramebufferRenderbuffer' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glxx_client_RenderbufferStorage' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glxx_client_DeleteRenderbuffers' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glxx_client_GenerateMipmap' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glxx_buffer_info_set' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glPointSizePointerOES' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glxx_client_DeleteFramebuffers' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glxx_client_IsFramebuffer' /home/krogoth-next/rpi-build/tmp/sysroots/raspberrypi2/usr/lib/libEGL.so: undefined reference to `glxx_client_state_free' collect2: error: ld returned 1 exit status make: *** [egl] Error 1 EGL disabled. The EGL functionality test failed; EGL is required by some QPA plugins to manage contexts & surfaces. You might need to modify the include and library search paths by editing QMAKE_INCDIR_EGL, QMAKE_LIBDIR_EGL and QMAKE_LIBS_EGL in /home/krogoth-next/rpi-build/tmp/work/cortexa7hf-neon-vfpv4-poky-linux-gnueabi/qtbase/5.6.2+gitAUTOINC+b4ada3f0d8-r0/git/mkspecs/linux-oe-g++. WARNING: exit code 1 from a shell command. ERROR: Function failed: do_configure (log file is located at /home/krogoth-next/rpi-build/tmp/work/cortexa7hf-neon-vfpv4-poky-linux-gnueabi/qtbase/5.6.2+gitAUTOINC+b4ada3f0d8-r0/temp/log.do_configure.20749)
I see that the Qt mkspec is pointing to linux-oe-g++ (which I suppose was intended for Nitrogen board). Is there some configuration that I need to set in order to build the toolchain for Raspberry Pi.