summaryrefslogtreecommitdiffstats
path: root/README
diff options
context:
space:
mode:
authorPaul Olav Tvete <paul.tvete@qt.io>2016-10-05 10:40:30 +0200
committerPaul Olav Tvete <paul.tvete@qt.io>2016-10-06 05:31:14 +0000
commit2e37c65cb8e90694a7fb8107f009ba7710103062 (patch)
tree6d22ebf99c0f09e19783548fa5ab82c2786f8091 /README
parent43081c1b7a8cc29d6dffc87dd0ef72faecf7233e (diff)
Show how to really make QtWayland work under X11
Change-Id: Id584a74d1d0805034b10ea68ee7bf9bf8acccb63 Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@hawaiios.org>
Diffstat (limited to 'README')
-rw-r--r--README33
1 files changed, 30 insertions, 3 deletions
diff --git a/README b/README
index 7d9ed16bd..d0c5e03cf 100644
--- a/README
+++ b/README
@@ -18,13 +18,13 @@ QtWaylandCompositor as plugins. To specify what plugin to load use the environme
variable QT_WAYLAND_CLIENT_BUFFER_INTEGRATION in the environment where the
compositor is started. The compositor will broadcast to the clients which
hardware integration to load when using the generic platformplugin "wayland". If
-no client buffer integration is specifided, then the wayland-egl plugin will be
+no client buffer integration is specified, then the wayland-egl plugin will be
loaded. Please note that no Weston clients will work if the non standard
wayland-egl client buffer integration is used.
-To start the qwindow-compositor with the xcomposite-egl integration then start
+To start the qwindow-compositor with the xcomposite-glx integration then start
the compositor as follows:
-QT_WAYLAND_CLIENT_BUFFER_INTEGRATION=xcomposite-egl ./qwindow-compositor
+QT_WAYLAND_CLIENT_BUFFER_INTEGRATION=xcomposite-glx ./qwindow-compositor
Now it should be possible to start an application in a separate terminal. ie:
$QTBASEDIR/examples/opengl/hellowindow/hellowindow -platform wayland --single
@@ -35,6 +35,33 @@ brcm
xcomposite-egl
xcomposite-glx
+Testing a Qt-based compositor on X11:
+
+Most QWidget-based applications will use shared memory buffers, which work on
+all hardware. OpenGL and Qt Quick applications need a way to send graphics
+memory buffers from client to server. There are many options, and not all
+options work on all hardware.
+
+The X Composite buffer integration should work on all modern X servers. It
+can be used with either EGL or GLX as the OpenGL backend. This must match the
+backend used by the xcb platform plugin. (Normally GLX is the default for Qt
+applications running on X11.) To use the X Composite buffer sharing with EGL,
+start the compositor as follows:
+
+QT_XCB_GL_INTEGRATION=xcb_egl QT_WAYLAND_CLIENT_BUFFER_INTEGRATION=xcomposite-egl ./pure-qml
+
+Using wayland-egl requires support from the driver. Intel integrated graphics
+are supported through the standard Mesa drivers. For NVidia, driver version
+364.12 or newer is required, and Qt must be configured with "-opengl es2".
+Run the compositor as follows:
+
+QT_XCB_GL_INTEGRATION=xcb_egl QT_WAYLAND_CLIENT_BUFFER_INTEGRATION=wayland-egl ./minimal-qml
+
+Please note that some NVidia drivers may require early EGL initialization. Qt
+clients normally use the buffer integration communicated by the compositor.
+To set the client-side buffer integration manually, run clients with
+"-platform wayland-egl".
+
Shell Integration:
Some platforms, especially non-desktop ones, use a custom Wayland shell