Difference between revisions of "D-BUS Core"
From CBLFS
Jump to navigationJump to search (→Introduction to D-BUS) |
|||
(18 intermediate revisions by 5 users not shown) | |||
Line 7: | Line 7: | ||
---- | ---- | ||
− | + | {{Package-Introduction||http://www.freedesktop.org/wiki/Software/dbus}} | |
− | + | == Dependencies == | |
− | == | + | === Required === |
+ | * [[Expat]] | ||
+ | * [[LibXML2]] | ||
+ | |||
+ | {{Note|Even though expat and libxml2 are considered "optional" the package will fail to compile cleanly without both libraries }} | ||
=== 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 26: | 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 31: | Line 38: | ||
Compile the package: | Compile the package: | ||
− | ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var && | + | ./configure --prefix=/usr --sysconfdir=/etc \ |
+ | --libexecdir=/usr/lib/dbus-1.0 --localstatedir=/var && | ||
make | make | ||
Line 38: | Line 46: | ||
make install && | make install && | ||
install -v -m755 -d /usr/share/doc/dbus-{{D-BUS-Version}} && | install -v -m755 -d /usr/share/doc/dbus-{{D-BUS-Version}} && | ||
− | install -v -m644 doc/{TODO,*.{dtd,xml,xsl | + | install -v -m644 doc/{TODO,*.{dtd,xml,xsl,txt,c}} \ |
/usr/share/doc/dbus-{{D-BUS-Version}} | /usr/share/doc/dbus-{{D-BUS-Version}} | ||
Line 47: | Line 55: | ||
Compile the package: | Compile the package: | ||
− | CC="gcc ${BUILD32}" ./configure --prefix=/usr | + | CC="gcc ${BUILD32}" USE_ARCH=32 \ |
− | + | ./configure --prefix=/usr --sysconfdir=/etc \ | |
− | + | --libexecdir=/usr/lib/dbus-1.0 --localstatedir=/var && | |
make | make | ||
Line 60: | Line 68: | ||
Compile the package: | Compile the package: | ||
− | CC="gcc ${BUILDN32}" ./configure --prefix=/usr \ | + | CC="gcc ${BUILDN32}" USE_ARCH=n32 \ |
− | -- | + | ./configure --prefix=/usr --sysconfdir=/etc \ |
− | -- | + | --libexecdir=/usr/lib32/dbus-1.0 --localstatedir=/var \ |
+ | --libdir=/usr/lib32 && | ||
make | make | ||
Line 73: | Line 82: | ||
Compile the package: | Compile the package: | ||
− | CC="gcc ${BUILD64}" ./configure --prefix=/usr \ | + | CC="gcc ${BUILD64}" USE_ARCH=64 \ |
− | -- | + | ./configure --prefix=/usr --sysconfdir=/etc \ |
− | -- | + | --libexecdir=/usr/lib64/dbus-1.0 --localstatedir=/var \ |
+ | --libdir=/usr/lib64 && | ||
make | make | ||
Line 82: | Line 92: | ||
make install && | make install && | ||
install -v -m755 -d /usr/share/doc/dbus-{{D-BUS-Version}} && | install -v -m755 -d /usr/share/doc/dbus-{{D-BUS-Version}} && | ||
− | install -v -m644 doc/{TODO,*.{dtd,xml,xsl | + | install -v -m644 doc/{TODO,*.{dtd,xml,xsl,txt,c}} \ |
/usr/share/doc/dbus-{{D-BUS-Version}} | /usr/share/doc/dbus-{{D-BUS-Version}} | ||
== Configuring == | == 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 === | === Bootscript === | ||
− | Install the init script included in the [[ | + | Install the init script included in the [[Bootscripts]] package. |
make install-dbus | make install-dbus |
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. |