[Interest] Problem with XCB and GLX

Tomasz Olszak olszak.tomasz at gmail.com
Mon Nov 3 11:29:09 CET 2014


2014-10-28 17:50 GMT+01:00 gsmolder <gsmolder at vub.ac.be>:
> Hi,
>
>
> I'm trying to use Qt Quick 2 on an ARM device (Odroid U3) so I have compiled
> Qt 5.3.2 on it. Unfortunately, when I run my application in X11 I get the
> following error :
> QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL
> are enabled
>
> Running glxgears shows a smooth animation so I guess GLX should be enabled
> on my system.
>
> Here is my configuration:
>
> ./configure -nomake examples -nomake tests -skip qtconnectivity -skip
> qtenginio -skip qtlocation -skip qtmultimedia -skip qtquick1 -skip qtsensors
> -skip qtserialport -skip qtsvg -skip qttools -skip qtwebkit -skip
> qtwebsockets -opengl es2
>
>
> OpenGL / OpenVG:
>     EGL .................. yes
>     OpenGL ............... yes (OpenGL ES 2.x)
>     OpenVG ............... no
>
> QPA backends:
>     DirectFB ............. no
>     EGLFS ................ yes
>     KMS .................. no
>     LinuxFB .............. yes
>     XCB .................. yes (system library)
>       EGL on X ........... no
>       GLX ................ yes
>       MIT-SHM ............ yes
>       Xcb-Xlib ........... yes
>       Xcursor ............ yes (loaded at runtime)
>       Xfixes ............. yes (loaded at runtime)
>       Xi ................. no
>       Xi2 ................ yes
>       Xinerama ........... yes (loaded at runtime)
>       Xrandr ............. yes (loaded at runtime)
>       Xrender ............ yes
>       XKB ................ no
>       XShape ............. yes
>       XSync .............. yes
>       XVideo ............. yes
>
> Of course my application is unable to run so I'm desperately in search of a
> solution. Can someone help me in some way ?
>
>
> Thanks !
>
> _______________________________________________
> Interest mailing list
> Interest at qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest
>


Your error comes from:
https://qt.gitorious.org/qt/qtbase/source/209a75f2d071e0977b6c0a8a2ce5d6eb0ff95b8c:src/plugins/platforms/xcb/qxcbintegration.cpp#L274

So neither XCB_USE_EGL nor XCB_USE_GLX is defined.

Even if configure detected glx it seems that it is not used when
opengles2 is used:

See https://qt.gitorious.org/qt/qtbase/source/209a75f2d071e0977b6c0a8a2ce5d6eb0ff95b8c:src/plugins/platforms/xcb/xcb-plugin.pro#L85

The more interesting is why you don't have egl on X. In Tizen some old
OS snapshots have broken egl headers hence egl on x test doesn't pass.
I created simple patch for that, maybe you could use it(see
attachment).

Check the output of your configure tests(configure -verbose) and pay
attention on egl.

Hope it helps.

Cheers,
Tomasz
-------------- next part --------------
A non-text attachment was scrubbed...
Name: configure_force_eglx.patch
Type: text/x-patch
Size: 1107 bytes
Desc: not available
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20141103/0bc4aa6f/attachment.bin>


More information about the Interest mailing list