Skip to content

Commit b60d26e

Browse files
docs: list the Linux runtime dependencies of the native library (#275)
The Linux native library fails to load on minimal hosts that lack the X11, GLib, GBM and libdrm libraries libwebrtc's desktop capturers use, which is a recurring support question. The getting started guide now lists the packages to install, and notes which ones became optional in 0.17.0.
1 parent 40e538b commit b60d26e

1 file changed

Lines changed: 12 additions & 0 deletions

File tree

‎docs/guide/get-started.md‎

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,18 @@ Maven Central artifacts contain native libraries that can be loaded on the follo
1111
| macOS | ✔ | - | ✔ |
1212
| Windows | ✔ | - | - |
1313

14+
::: info
15+
**Linux runtime dependencies**
16+
17+
The Linux native library links the X11 client libraries and the GLib, GBM and libdrm libraries that libwebrtc's desktop capturers use. A minimal installation, for example a container image, needs them installed before the library can load. On Debian and Ubuntu:
18+
19+
```shell
20+
apt-get install libx11-6 libxext6 libxfixes3 libxdamage1 libxtst6 libxrandr2 libxcomposite1 libglib2.0-0 libgbm1 libdrm2
21+
```
22+
23+
Since 0.17.0, PulseAudio, udev and D-Bus are opened at runtime only when audio devices, cameras or the screen saver inhibition are used, so the library loads without `libpulse0`, `libudev1` and `libdbus-1-3`. Earlier versions link them and need those three packages as well.
24+
:::
25+
1426

1527
## Installation
1628

0 commit comments

Comments
 (0)