EGL Error creating egl surface, error = 0x300b

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

EGL Error creating egl surface, error = 0x300b

11,412 Views
EinarMar
Contributor IV

Hi

After cross-compiling Qt5 (5.2.0) for armhf with opengl es2 support and with the hardfp Vivante binaries from: http://repository.timesys.com/buildsources/g/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q-3.0.35-4.0.0/ , I can run the provided examples with -platform linxufb on my imx6q board.

The problem is however with the -platform eglfs.

My Qt5 application is not able to run because it complains about: EGL Error : Could not create the egl surface: error = 0x300b

The application is executed like: hellogl_es2 -platform eglfs

I've seen various threads and forums about this issue but non have had any solution for me at least. Mostly comments about this issue being fixed in 5.2.0.

Anyone had any luck with using eglfs on the imx6q ? my board is SabreLite.

regards

Einar

5 Replies

3,408 Views
EinarMar
Contributor IV

I asked around on the qt-project forum and got response there about adding the -device linux-imx6-g++ to configure.

I recompiled my Qt5 and tested some opengl test programs with success. It now uses the accelerator without any problem.

This added option will implement the eglfs with some X11 hooks to create the native screen.

So my configure line is now:

./configure -top-level -arch armhf -xplatform linux-arm-sl-gnueabi-g++ -opensource -eglfs -no-openvg -no-opengl -opengl es2 -no-xcb -no-pch -device linux-imx6-g++ -device-option CROSS_COMPILE=arm-linux-gnueabihf- -no-sse -no-sse2 -no-sse3 -no-ssse3 -no-sse4.1 -no-sse4.2 -no-avx -hostprefix /opt/pluto-targets/armhf-rootfs//usr -confirm-license -make tools -make examples -no-dbus -no-openssl -no-xvideo -no-cups -no-dbus -no-glib -qt-zlib -no-nis -no-cups -no-openssl -qt-libpng -qt-libjpeg -no-audio-backend -no-separate-debug-info -no-rpath -prefix /usr -bindir /usr/bin -libdir /usr/lib -docdir /usr/share/qt5-pluto/doc -headerdir /usr/include/qt5-pluto -datadir /usr/share/qt5-pluto -plugindir /usr/lib/qt5-pluto/plugins -translationdir /usr/share/qt5-pluto/translations -sysconfdir /etc/xdg -examplesdir /usr/lib/qt5-pluto/examples --fully-process -v

I can now verify that the windowless application (eglfs) using acceleration in Qt5 works.

regards

Einar

0 Kudos

3,408 Views
slavinakoleva-c
Contributor I

Hi Einar,

you might find this helpful in understanding why hellogl_es2 -platfrom eglfs is not working: QT5 Demo Errors on EGLFS

you need Wayland or X11 environment for that demo. Eglfs supports a single window only.

Regards,

Slavina

3,408 Views
EinarMar
Contributor IV

Thanks for that Slavina but as I have mentioned in my previous post then I have managed to run the hellogl_es2 -platform eglfs just fine.

It seems to be using the galcore kernel core for working on the gpu and the application itself is at 1% cpu load.

I therefore can verify that the acceleration and Qt5 (eglfs) are working just fine :smileyhappy:

regards

Einar

0 Kudos

3,408 Views
EinarMar
Contributor IV

I looked at the code and saw that the imlementation of createNativeWindow in qtbase/src/plugins/platforms/eglfs/qeglfshooks_stub.cpp doesn’t exists, i.e. always returns zero.
Looking at qtbase/src/plugins/platforms/eglfs/qeglfshooks_x11.cpp the method is implemented.

Does this mean I need the X11, after all, when attempting to run only with eglfs ? I was under the impression that it wasn’t necessary.

regards
Einar

0 Kudos

3,408 Views
EinarMar
Contributor IV

I have tried the Vivante SDK demos with success so the acceleration part is working fine. So this means it is breaking somewhere in Qt5 ?

Does anybody have input here ?

regards

Einar

0 Kudos