[yocto] building qtbase for raspberry pi fails

Felix01 Fischer felix01.fischer at iav.de
Fri Apr 25 04:00:38 PDT 2014


Hello everybody,
first, I hope I have choosen the right mailing list for my problem. If 
not, please tell me.

I have problems getting Qt5 building and running on a raspberry pi (512 Mb 
Version).
I'm using today's master branch from yocto & meta-raspberrypi ( 
git.yoctoproject.org ) and meta-qt5 ( github.com/meta-qt5/meta-qt5 ).
Building without a change in qtbase doesn't work because the OpenGL Test 
fails ( the raspberry pi only suppports GLESv2).
When building with a qtbase_X.Y.Z.bbappend and "PACKAGECCONFIG_append = " 
gles2" in order to use eglfs the mess beginns.
First, building qtbase fails because 
qtbase-opensource-src-5.2.1/config.tests/qpa/egl/egl.cpp cannot find 
"vcos_types.h"
After including this manually in "meta-qt5/recipes-qt/qt5/qtbase.inc" by 
adding the last line to configure
do_configure() {
 
[.............]

    ${S}/configure -v \
-I${STAGING_DIR_TARGET}/usr/include/interface/vcos/pthreads/ \

[.............]

}

 
the next error is the following:
| EGL auto-detection... ()
| arm-poky-linux-gnueabi-g++  -march=armv6 -mthumb-interwork 
-mfloat-abi=softfp  -mfpu=vfp 
--sysroot=/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi -c 
-pipe  -O2 -pipe -g -feliminate-unused-debug-types 
-fvisibility-inlines-hidden -O2 -Wall -W -fPIE 
-I../../../../qtbase-opensource-src-5.2.1/mkspecs/linux-oe-g++ 
-I../../../../qtbase-opensource-src-5.2.1/config.tests/qpa/egl 
-I../../../../../../../../sysroots/raspberrypi/usr/include/interface/vcos/pthreads 
-I. -o egl.o 
../../../../qtbase-opensource-src-5.2.1/config.tests/qpa/egl/egl.cpp
| ../../../../qtbase-opensource-src-5.2.1/config.tests/qpa/egl/egl.cpp: In 
function 'int main(int, char**)':
| 
../../../../qtbase-opensource-src-5.2.1/config.tests/qpa/egl/egl.cpp:46:12: 
warning: unused variable 'x' [-Wunused-variable]
|      EGLint x = 0;
|             ^
| arm-poky-linux-gnueabi-g++  -march=armv6 -mthumb-interwork 
-mfloat-abi=softfp  -mfpu=vfp 
--sysroot=/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi 
-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,-O1 -o egl egl.o   -lEGL
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glxx_client_GetRenderbufferParameteriv'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `gl20_client_state_init'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `gl11_client_state_init'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glintAttribPointer'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glxx_client_GenFramebuffers'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glxx_buffer_info_get'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glDiscardFramebufferEXT'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glxx_client_FramebufferTexture2D'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glxx_client_IsRenderbuffer'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glxx_set_error'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glxx_client_BindFramebuffer'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glxx_client_GenRenderbuffers'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glxx_set_error_api'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glxx_client_BindRenderbuffer'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glBufferSubData'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glxx_client_GetFramebufferAttachmentParameteriv'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glxx_client_CheckFramebufferStatus'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glxx_client_FramebufferRenderbuffer'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glxx_client_RenderbufferStorage'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glxx_client_DeleteRenderbuffers'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glxx_client_GenerateMipmap'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glxx_buffer_info_set'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glPointSizePointerOES'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glxx_client_DeleteFramebuffers'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glxx_client_IsFramebuffer'
| 
/media/yocto_build/qt5-raspb/build/tmp/sysroots/raspberrypi/usr/lib/libEGL.so: 
undefined reference to `glxx_client_state_free'
| collect2: error: ld returned 1 exit status
| make: *** [egl] Error 1
| EGL disabled.


If I bypass this test (by 
modifyingqtbase-opensource-src-5.2.1/config.tests/qpa/egl/egl.cpp so it 
does nothing and always returns 0) the build works fine and I can boot the 
resulting Image.

Unfortunately Qt Programms will abort with 
"eglfs: Could not create the egl surface: error = 0x300b"

I tried a lot of stuff but I' cant get ether of the two errors "fixed". 
Any help appreciated.
Thank you for your time,

Felix Fischer

Student Employee (VC-I42)
Vehicle Cockpit - HMI Software and Code generation

IAV GmbH
Carnotstr. 1
10587 BERLIN
GERMANY

Phone: +49 30 3997-89540
Fax:       +49 30 3997-89411
E-Mail:  <mailto:felix01.fischer at iav.de>
Internet: http://www.iav.com

Sitz/Registered Office: Berlin, 
Registergericht/Registration Court: Amtsgericht Charlottenburg, 
Registernummer/Company Registration Number: HRB 21 280, 
Geschäftsführer/Managing Directors: Kurt Blumenröder, Michael Schubert, 
Dr. Rüdiger Goyk
Vorsitzender des Aufsichtsrates/Chairman of the Supervisory Board: Dr. 
Harald Ludanek
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20140425/69682336/attachment.html>


More information about the yocto mailing list