In order to compile WirePlumber you will need:
GLib >= 2.62
PipeWire 0.3 (>= 0.3.43)
Lua 5.3 or 5.4
Lua is optional in the sense that if it is not found in the system, a bundled version will be built and linked statically with WirePlumber. This is controlled by the system-lua meson option.
For building gobject-introspection data, you will also need doxygen and g-ir-scanner. The latter is usually shipped together with the gobject-introspection development files.
WirePlumber uses the meson build system
To configure the project, you need to first run meson. The basic syntax is shown below:
meson [--prefix=/path] [...options...] [build directory] [source directory]
Assuming you want to build in a directory called ‘build’ inside the source tree, you can run:
$ meson setup --prefix=/usr build $ meson compile -C build
Force enable or force disable building gobject-introspection data.
The default value is auto, which means that g-i will be built if doxygen and g-ir-scanner are found and skipped otherwise.
Force enable or force disable building documentation.
The default value is auto, which means that documentation will be built if doxygen, sphinx and breathe are found and skipped otherwise.
Force using lua from the system instead of the bundled one.
The default value is auto, which means that system lua will be used if it is found, otherwise the bundled static version will be built silently.
Use disabled to force using the bundled lua.
Enables installing systemd units. The default is auto
enabled and auto currently mean the same thing.
Enables installing systemd system service file. The default is false
Enables installing systemd user service file. The default is true
Directory for system systemd units.
Directory for user systemd units.
To install, simply run the install target with ninja:
$ ninja -C build install
To revert the installation, there is also an uninstall target:
$ ninja -C build uninstall