Qt for X11 要求

平台插件依赖

在 Linux, xcb 使用 QPA (Qt 平台抽象) 平台插件。它提供所需基本功能通过 Qt GUI and Qt Widgets 以运行针对 X11。下表描述其库的依赖。要从其源代码构建 Qt,还需要为系统安装这些库的开发包。

注意: 从 Qt 5.15 起,Qt 确实要求 libxcb 1.11。另外, -qt-xcb 配置选项被移除 (捆绑以下一些库)。无论如何,现在可以配置采用 -bundled-xcb-xinput 以避免依赖系统 xcb-xinput。

名称 Library 注意事项 配置选项 最低工作版本
XRender libXrender X 渲染扩展;用于抗锯齿和 Alpha 光标支持 -xrender 或自动检测 0.9.0
xcb-render libxcb-render 用于渲染扩展的 X C 绑定 自动检测 1.11
xcb-render-util libxcb-render-util 用渲染扩展的 XCB 实用程序库 自动检测 0.3.9
xcb-shape libxcb-shape 同步形状扩展的 X C 绑定 自动检测 1.11
xcb-randr libxcb-randr 用于重置尺寸和旋转扩展的 X C 绑定 自动检测 1.11
xcb-xfixes libxcb-xfixes 用于修复扩展的 X C 绑定 自动检测 1.11
xcb-xkb libxcb-xkb X C Bindings for XKeyboard Extension 自动检测 1.11
xcb-sync libxcb-sync 用于同步扩展的 X C 绑定 自动检测 1.11
xcb-shm libxcb-shm 用于共享内存扩展的 X C 绑定 自动检测 1.11
xcb-icccm libxcb-icccm 用于 ICCCM 协议的 X C 绑定 自动检测 0.3.9
xcb-keysyms libxcb-keysyms 用于键码转换的 XCB 实用程序库 自动检测 0.3.9
xcb-image libxcb-image 用于 XImage 和 XShmImage 的 XCB 实用程序库,用于 QBackingStore 和光标支持 自动检测 0.3.9
xcb-util libxcb-util Utility library for XCB for atom, aux and event 自动检测 0.3.9
xkbcommon libxkbcommon 键映射处理 -xkbcommon 或自动检测 0.5.0
xkbcommon-x11 libxkbcommon-x11 键映射处理 自动检测 0.5.0
Fontconfig libfontconfig 字体定制和配置 -fontconfig 或自动检测 2.6
FreeType libfreetype 字体引擎 2.3.0
Xext libXext X 扩展 6.4.3
X11 libX11 X11 客户端侧库 6.2.1
xcb libxcb X C 绑定库 1.11
X11-xcb libX11-xcb Xlib/XCB 接口库 1.3.2
SM libSM X 会话管理 -sm 或自动检测 6.0.4
ICE libICE ICE (客户端间交换) -sm 或自动检测 6.3.5
glib libglib-2.0 常见事件循环处理 -glib 或自动检测 2.8.3
pthread libpthread 多线程 2.3.5

这些库开发包包含从其源代码构建 Qt 时使用的头文件。例如,在基于 Debian 的 GNU/Linux 系统,推荐安装以下开发包:

  • libfontconfig1-dev
  • libfreetype6-dev
  • libx11-dev
  • libx11-xcb-dev
  • libxext-dev
  • libxfixes-dev
  • libxi-dev
  • libxrender-dev
  • libxcb1-dev
  • libxcb-glx0-dev
  • libxcb-keysyms1-dev
  • libxcb-image0-dev
  • libxcb-shm0-dev
  • libxcb-icccm4-dev
  • libxcb-sync-dev
  • libxcb-xfixes0-dev
  • libxcb-shape0-dev
  • libxcb-randr0-dev
  • libxcb-render-util0-dev
  • libxcb-util-dev
  • libxcb-xinerama0-dev
  • libxcb-xkb-dev
  • libxkbcommon-dev
  • libxkbcommon-x11-dev

这些包中的某些依赖此列表中的其它,因此安装一个可能导致其它被自动安装。其它分布可能为系统包提供类似名称。

可访问性依赖

Qt 可访问性实现使用 辅助技术服务提供商接口 (AT-SPI)。除 DBUS 外,开发包 libatspi2.0-dev 必须安装。

OpenGL 依赖

配置试图自动检测 OpenGL ES 2.0 或更高版本或常规桌面 OpenGL。可以禁用 OpenGL 支持通过使用 -no-opengl 选项。

注意: Qt OpenGL 模块 (包含类开头采用 QGL ) 弃用代之 Qt GUI 模块 (包含类开头采用 QOpenGL ).

QDoc 依赖

QDoc uses Clang to parse C++ code. If you wish to build QDoc manually, refer to 为 QDoc 安装 Clang 对于特定构建要求。