En/TDE dbus-1-tqt

From Studiosg
Jump to navigationJump to search

Welcome to Simone Giustetti's wiki pages.

Languages: English - Italiano


TDE - Prerequisites

D-Bus is an inter-process communication and message mechanism. D-Bus provides a common software interface for user applications and processes, system processes, hardware control processes and driver provided services. All this through a fast and low latency binary data transfer protocol that endows D-Bus with good performances and low CPU usage. Initially developed for Linux, D-Bus is currently maintained by the freedesktop project and its design and specification are open to anyone. D-Bus is used by many modern desktop managers such as GNOME and KDE where it replaced the previous DCOP inter-process communication interface.

D-Bus provides both a system daemon, useful to discover new hardware and to check for status changes of the in use one, and a daemon dedicated to each user, used by applications and processes. TDE uses D-Bus as:

  • A mean for desktop applications to communicate with each other.
  • A mean for the desktop environment and the operating system to communicate.

Package dbus-1-tqt contains the QT4 bindings to D-Bus and as such is a prerequisite for the whole desktop environment and the many services it offers.

D-Bus-1-Tqt and Slackware

Package dbus-1-tqt has no correspondence among Slackware 13.0 KDE packages: it is TDE specific code therefore no slackbuild script to use as a template exists. A new build script was written based on the TDE documentation and the no more supported build kit for Slackware. The configuration and build procedure for the dbus-1-tqt package is managed by cmake; the autotools suite is not needed. Directory /opt/trinity was configured as root directory in accordance to the other TDE packages in order to permit TDE coexistence with KDE 4. No specific cmake parameter was used as the documentation pointed out no such need. Some notes to the script code follow.

First the script has to clean the cmake cache:

   # Clean cmake cache
   find . -name CMakeCache.txt -exec rm {} \;

Then it creates a directory where to build software and store output binaries. As for previously built packages the directory was named build in order for cmake to find it:

   # Create a directory where to build source (cmake wants the name to be build).
   cd ${TMP}/tmp-${PRGNAM}
   mkdir build
   cd build

Specifically set Qt libraries paths in order for build scripts to find them at build time:

   # Add temporary paths to handle new libraries during build
   export QTDIR=/opt/trinity
   export PATH=/opt/trinity/bin:/usr/bin:$PATH
   export LIBDIR=/usr/lib${LIBDIRSUFFIX}
   export LD_LIBRARY_PATH=/usr/lib${LIBDIRSUFFIX}:/opt/trinity/lib${LIBDIRSUFFIX}
   export PKG_CONFIG_PATH=:/usr/lib${LIBDIRSUFFIX}/pkgconfig:/opt/trinity/lib${LIBDIRSUFFIX}/pkgconfig:$PKG_CONFIG_PATH

Last the script runs the cmake command with standard options:

   cmake ${TMP}/tmp-${PRGNAM}/${PRGNAM}-${VERSION} \
      -DSYSCONF_INSTALL_DIR="/etc/trinity" \
      -DQT_VERSION=3 \
      -DQT_INCLUDE_DIR=/opt/trinity/include \
       2>&1 | tee ${OUTPUT}/${PRGNAM}_configure.log

Once the configuration successfully concludes, the script runs the make command then goes on with packaging the software.

A full script can be downloaded from the following link. The output package can be installed by mean of command installpkg as usual in Slackware Linux.

For any feedback, questions, errors and such, please e-mail me at studiosg [at] giustetti [dot] net

External Links

Languages: English - Italiano