Qt Reference Documentation

General Qt Requirements

# Qt for X11 Requirements

## QtGui Dependencies

The QtGui module and the QtCore module, which provides the non-GUI features required by QtGui, depend on the libraries described in 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.

Name | Library | Notes | Configuration options | Minimum working version
--- | --- | --- | --- | ---
XRender | libXrender | X Rendering Extension; used for anti-aliasing | `-xrender` or auto-detected | 0.9.0
Xrandr | libXrandr | X Resize and Rotate Extension | `-xrandr` or auto-detected | 1.0.2
Xcursor | libXcursor | X Cursor Extension | `-xcursor` or auto-detected | 1.1.4
Xfixes | libXfixes | X Fixes Extension | `-xfixes` or auto-detected | 3.0.0
Xinerama | libXinerama | Multi-head support | `-xinerama` or auto-detected | 1.1.0
Fontconfig | libfontconfig | Font customization and configuration | `-fontconfig` or auto-detected | 2.1
FreeType | libfreetype | Font engine |  | 2.1.3
Xi | libXi | X11 Input Extensions | `-xinput` or auto-detected | 1.3.0
Xt | libXt | Xt Intrinsics |  | 0.99
Xext | libXext | X Extensions |  | 6.4.3
X11 | libX11 | X11 Client-Side Library |  | 6.2.1
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

Note: You must compile with XRender support to get alpha transparency support for pixmaps and images.

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
- libxcursor-dev
- libxext-dev
- libxfixes-dev
- libxft-dev
- libxi-dev
- libxrandr-dev
- libxrender-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

The configure script will autodetect if OpenGL headers and libraries are installed on your system, and if so, it will include the QtOpenGL module in the Qt library.

If your OpenGL headers or libraries are placed in a non-standard directory, you may need to change the `QMAKE_INCDIR_OPENGL` and/or `QMAKE_LIBDIR_OPENGL` in the config file for your system.

The QGL documentation assumes that you are familiar with OpenGL programming. If you're new to the subject a good starting point is http://www.opengl.org/.

## Phonon Dependencies

As described in the Phonon Overview, Phonon uses the GStreamer multimedia framework as the backend for audio and video playback on X11. The minimum required version of GStreamer is 0.10.

To build Phonon, you need the GStreamer library, base plugins, and development files for your system. 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.

See also Known Issues.