IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Qt for X11 Requirements

Setting up the X11 environment for Qt.

Article lu   fois.

L'auteur

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

Platform Plugin Dependencies

On Linux, the xcb QPA (Qt Platform Abstraction) platform plugin is used. It provides the basic functionality needed by Qt GUI and Qt Widgets to run against X11. Its library dependencies are described the following table. To build Qt from its source code, you will also need to install the development packages for these libraries for your system.

It's possible to configure Qt with -qt-xcb, which compiles in a set of xcb helper libraries instead of trying to link against the system versions. This can help make Qt less dependent on some of the xcb helper libraries that might not be available on all distributions. The table specifies which dependencies are provided by -qt-xcb.

Name

Library

Notes

Configuration options

Minimum working version

XRender

libXrender

X Rendering Extension; used for anti-aliasing and alpha cursor support

-xrender or auto-detected

0.9.0

xcb-render

libxcb-render

X C Bindings for Render extension

auto-detected or provided by -qt-xcb

1.9

xcb-render-util

libxcb-render-util

Utility library for XCB for Render extension

auto-detected or provided by -qt-xcb

0.3.8

xcb-shape

libxcb-shape

X C Bindings for Shape extension

auto-detected or provided by -qt-xcb

1.9

xcb-randr

libxcb-randr

X C Bindings for Resize and Rotate Extension

auto-detected or provided by -qt-xcb

1.9

xcb-xfixes

libxcb-xfixes

X C Bindings for Fixes Extension

auto-detected or provided by -qt-xcb

1.9

xcb-sync

libxcb-sync

X C Bindings for Sync Extension

auto-detected or provided by -qt-xcb

1.9

xcb-shm

libxcb-shm

X C Bindings for Shared Memory Extension

auto-detected or provided by -qt-xcb

1.9

xcb-icccm

libxcb-icccm

X C Bindings for ICCCM Protocol

auto-detected or provided by -qt-xcb

0.3.9

xcb-keysyms

libxcb-keysyms

Utility library for XCB for keycode conversion

auto-detected or provided by -qt-xcb

0.3.9

xcb-image

libxcb-image

Utility library for XCB for XImage and XShmImage, used for QBackingStore and cursor support

auto-detected or provided by -qt-xcb

0.3.9

xkbcommon

libxkbcommon

Keymap handling

-xkbcommon or auto-detected

0.5.0

Fontconfig

libfontconfig

Font customization and configuration

-fontconfig or auto-detected

2.6

FreeType

libfreetype

Font engine

 

2.3.0

Xi

libXi

X11 Input Extensions

-xinput or auto-detected

1.3.0

Xext

libXext

X Extensions

 

6.4.3

X11

libX11

X11 client-side library

 

6.2.1

xcb

libxcb

X C Binding library

 

1.9

X11-xcb

libX11-xcb

Xlib/XCB interface library

 

1.3.2

SM

libSM

X Session Management

-sm or auto-detected

6.0.4

ICE

libICE

Inter-Client Exchange

-sm or auto-detected

6.3.5

glib

libglib-2.0

Common event loop handling

-glib or auto-detected

2.8.3

pthread

libpthread

Multithreading

 

2.3.5

Development packages for these libraries contain header files that are used when building Qt from its source code. On Debian-based GNU/Linux systems, for example, we recommend that you install the following development packages:

  • libfontconfig1-dev

  • libfreetype6-dev

  • libx11-dev

  • libxext-dev

  • libxfixes-dev

  • libxi-dev

  • libxrender-dev

  • libxcb1-dev

  • libx11-xcb-dev

  • libxcb-glx0-dev

  • libxkbcommon-x11-dev

Additionally, if you do not configure with -qt-xcb, you should also install these development packages:

  • libxcb-keysyms1-dev

  • libxcb-image0-dev

  • libxcb-shm0-dev

  • libxcb-icccm4-dev

  • libxcb-sync0-dev

  • libxcb-xfixes0-dev

  • libxcb-shape0-dev

  • libxcb-randr0-dev

  • libxcb-render-util0-dev

Some of these packages depend on others in this list, so installing one may cause others to be automatically installed. Other distributions may provide system packages with similar names.

OpenGL Dependencies

Configure attempts to automatically detect OpenGL ES 2.0, or later, or regular desktop OpenGL. You can disable OpenGL support by using the -no-opengl option.

The Qt OpenGL module (which contains classes that start with QGL) has been deprecated in favor of the Qt GUI module (which contains classes that start with QOpenGL).

Multimedia Dependencies

As described in the Multimedia overview, Qt Multimedia uses the GStreamer multimedia framework as the backend for audio and video playback on Linux. The minimum required version of GStreamer is 0.10.24. The 1.x series is also supported.

To build Qt Multimedia, you need the GStreamer library, base plugins, and development files for your system. To run applications that use Qt Multimedia, you might also need to install the following GStreamer plugins: 'good', 'ugly', 'bad', ffmpeg (0.10), and libav (1.x). These additional plugins contain various codecs for audio and video decoding, as well as the necessary components for using the camera APIs. The package names for GStreamer vary between Linux distributions; try searching for gstreamer or libgstreamer in your distribution's package repository to find suitable packages.

Qt WebEngine Dependencies

Qt WebEngine has additional build requirements which are listed in the Qt WebEngine Platform Notes.

QDoc Dependencies

Since version 5.11, QDoc uses Clang to parse C++ code. If you wish to build QDoc manually, refer to Installing Clang for QDoc for specific build requirements.

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+