6.64. D-Bus-1.8.20

D-Bus is a message bus system, a simple way for applications to talk to one another. D-Bus supplies both a system daemon (for events such as "new hardware device added" or "printer queue changed") and a per-user-login-session daemon (for general IPC needs among user applications). Also, the message bus is built on top of a general one-to-one message passing framework, which can be used by any two applications to communicate directly (without going through the message bus daemon).

Approximate build time: 0.3 SBU
Required disk space: 35 MB

6.64.1. Installation of D-Bus

Prepare D-Bus for compilation:

./configure --prefix=/usr                       \
            --sysconfdir=/etc                   \
            --localstatedir=/var                \
            --docdir=/usr/share/doc/dbus-1.8.20 \
            --disable-static                    \

The meaning of the configure options:


This specifies the location of the ConsoleKit auth directory.

Compile the package:


This package does come with a testsuite, but it requires several packages that are not included in LFS. Instructions for running the testsuite can be found in the BLFS book at http://www.linuxfromscratch.org/blfs/view/systemd/general/dbus.html.

Install the package:

make install

The shared library needs to be moved to /lib, and as a result the .so file in /usr/lib will need to be recreated:

mv -v /usr/lib/libdbus-1.so.* /lib
ln -sfv ../../lib/$(readlink /usr/lib/libdbus-1.so) /usr/lib/libdbus-1.so

Create a symlink, so that D-Bus and systemd can use the same machine-id file:

ln -sfv /etc/machine-id /var/lib/dbus

6.64.2. Contents of D-Bus

Installed programs: dbus-cleanup-sockets, dbus-daemon, dbus-launch, dbus-monitor, dbus-run-session, dbus-send, and dbus-uuidgen
Installed libraries: libdbus-1.{a,so}
Installed directories: /etc/dbus-1, /usr/include/dbus-1.0, /usr/lib/dbus-1.0, /usr/share/dbus-1, /usr/share/doc/dbus-1.8.20, and /var/lib/dbus

Short Descriptions


Used to clean up leftover sockets in a directory


The D-Bus message bus daemon


Starts dbus-daemon from a shell script


Monitors messages passing through a D-Bus message bus


Starts a session bus instance of dbus-daemon from a shell script and starts a specified program in that session


Sends a message to a D-Bus message bus


Generates a universally unique ID


Contains API functions used to communicate with the D-Bus message bus