Difference between revisions of "D-BUS Core"
From CBLFS
Jump to navigationJump to search(3 intermediate revisions by 2 users not shown) | |||
Line 18: | Line 18: | ||
=== Optional === | === Optional === | ||
− | * [[ | + | * [[D-BUS_Glib]] (For testsuite --enable-tests --enable-asserts) |
+ | * [[D-BUS_Python]] (For testsuite --enable-tests --enable-asserts) | ||
+ | * [[PyGObject]] (For testsuite --enable-tests --enable-asserts) | ||
* [[SELinux]] | * [[SELinux]] | ||
* [[X Window System]] | * [[X Window System]] | ||
− | * [[xmlto]] | + | * [[xmlto]] (For documentation) |
− | * [[Doxygen]] | + | * [[Doxygen]] (For documentation) |
== MessageBus User/Group == | == MessageBus User/Group == | ||
Line 29: | Line 31: | ||
useradd -c "D-BUS Message Daemon User" -d /dev/null \ | useradd -c "D-BUS Message Daemon User" -d /dev/null \ | ||
-u 27 -g messagebus -s /bin/false messagebus | -u 27 -g messagebus -s /bin/false messagebus | ||
+ | |||
+ | {{Note|The dbus tests cannot be run until after [[D-BUS_Glib]] has been installed. They must be run as an unprivileged user from a local session. Tests fail through ssh. If you want to run only the unit tests, replace, --enable-tests with --enable-embedded-tests, otherwise, [[D-BUS_Python]] has to be installed. The tests require passing additional parameters to configure and exposing additional functionality in the binaries. These interfaces are not intended to be used in a production build of [[D-BUS]]. If you would like to run the tests, issue the following command: make check }} | ||
== Non-Multilib == | == Non-Multilib == | ||
Line 34: | Line 38: | ||
Compile the package: | Compile the package: | ||
− | |||
./configure --prefix=/usr --sysconfdir=/etc \ | ./configure --prefix=/usr --sysconfdir=/etc \ | ||
--libexecdir=/usr/lib/dbus-1.0 --localstatedir=/var && | --libexecdir=/usr/lib/dbus-1.0 --localstatedir=/var && | ||
Line 52: | Line 55: | ||
Compile the package: | Compile the package: | ||
− | |||
CC="gcc ${BUILD32}" USE_ARCH=32 \ | CC="gcc ${BUILD32}" USE_ARCH=32 \ | ||
./configure --prefix=/usr --sysconfdir=/etc \ | ./configure --prefix=/usr --sysconfdir=/etc \ | ||
Line 66: | Line 68: | ||
Compile the package: | Compile the package: | ||
− | |||
CC="gcc ${BUILDN32}" USE_ARCH=n32 \ | CC="gcc ${BUILDN32}" USE_ARCH=n32 \ | ||
./configure --prefix=/usr --sysconfdir=/etc \ | ./configure --prefix=/usr --sysconfdir=/etc \ | ||
Line 81: | Line 82: | ||
Compile the package: | Compile the package: | ||
− | |||
CC="gcc ${BUILD64}" USE_ARCH=64 \ | CC="gcc ${BUILD64}" USE_ARCH=64 \ | ||
./configure --prefix=/usr --sysconfdir=/etc \ | ./configure --prefix=/usr --sysconfdir=/etc \ |
Latest revision as of 13:43, 9 March 2014
Download Source: | http://dbus.freedesktop.org/releases/dbus/dbus-1.8.0.tar.gz |
---|
Contents
Introduction to D-BUS Core
Project Homepage: http://www.freedesktop.org/wiki/Software/dbus
Dependencies
Required
Even though expat and libxml2 are considered "optional" the package will fail to compile cleanly without both libraries
Optional
- D-BUS_Glib (For testsuite --enable-tests --enable-asserts)
- D-BUS_Python (For testsuite --enable-tests --enable-asserts)
- PyGObject (For testsuite --enable-tests --enable-asserts)
- SELinux
- X Window System
- xmlto (For documentation)
- Doxygen (For documentation)
MessageBus User/Group
groupadd -g 27 messagebus && useradd -c "D-BUS Message Daemon User" -d /dev/null \ -u 27 -g messagebus -s /bin/false messagebus
The dbus tests cannot be run until after D-BUS_Glib has been installed. They must be run as an unprivileged user from a local session. Tests fail through ssh. If you want to run only the unit tests, replace, --enable-tests with --enable-embedded-tests, otherwise, D-BUS_Python has to be installed. The tests require passing additional parameters to configure and exposing additional functionality in the binaries. These interfaces are not intended to be used in a production build of D-BUS. If you would like to run the tests, issue the following command: make check
Non-Multilib
Compile the package:
./configure --prefix=/usr --sysconfdir=/etc \ --libexecdir=/usr/lib/dbus-1.0 --localstatedir=/var && make
Install the package
make install && install -v -m755 -d /usr/share/doc/dbus-1.8.0 && install -v -m644 doc/{TODO,*.{dtd,xml,xsl,txt,c}} \ /usr/share/doc/dbus-1.8.0
Multilib
32Bit
Compile the package:
CC="gcc ${BUILD32}" USE_ARCH=32 \ ./configure --prefix=/usr --sysconfdir=/etc \ --libexecdir=/usr/lib/dbus-1.0 --localstatedir=/var && make
Install the package
make install
N32
Compile the package:
CC="gcc ${BUILDN32}" USE_ARCH=n32 \ ./configure --prefix=/usr --sysconfdir=/etc \ --libexecdir=/usr/lib32/dbus-1.0 --localstatedir=/var \ --libdir=/usr/lib32 && make
Install the package
make install
64Bit
Compile the package:
CC="gcc ${BUILD64}" USE_ARCH=64 \ ./configure --prefix=/usr --sysconfdir=/etc \ --libexecdir=/usr/lib64/dbus-1.0 --localstatedir=/var \ --libdir=/usr/lib64 && make
Install the package
make install && install -v -m755 -d /usr/share/doc/dbus-1.8.0 && install -v -m644 doc/{TODO,*.{dtd,xml,xsl,txt,c}} \ /usr/share/doc/dbus-1.8.0
Configuring
If you have not already used dbus on this installation, the file /var/lib/dbus/machine-id will not exist. This is needed for successful operation. You can create it by running the following command as root:
dbus-uuidgen --ensure
Bootscript
Install the init script included in the Bootscripts package.
make install-dbus
Contents
Installed Programs: | dbus-daemon, dbus-send, dbus-monitor, dbus-launch, dbus-cleanup-sockets, dbus-uuidgen |
---|---|
Installed Libraries: | libdbus-1.{so,la,a} |
Installed Directories: | /usr/lib/dbus-1.0/include/dbus, /etc/dbus-1, /var/run/dbus, /etc/dbus-1/system.d, /usr/share/dbus-1/services, and /usr/share/doc/dbus-1.8.0 |
Short Descriptions
dbus-cleanup-sockets | is used to clean up leftover sockets in a directory. |
---|---|
dbus-daemon | is the D-BUS message bus daemon. |
dbus-launch | is used to start dbus-daemon from a shell script. It would normally be called from a user's login scripts. |
dbus-monitor | is used to monitor messages going through a D-BUS message bus. |
dbus-send | is used to send a message to a D-BUS message bus. |
dbus-viewer | is a graphical D-BUS frontend utility. |
libdbus-1.{so,a} | contains the API functions used by the D-BUS message daemon. D-BUS is first a library that provides one-to-one communication between any two applications; dbus-daemon is an application that uses this library to implement a message bus daemon. |