Difference between revisions of "En/TDE dbus-tqt"

From Studiosg
Jump to navigationJump to search
(Page updated to new template)
(Some minor updates)
Line 1: Line 1:
{{header_en|title=Building an Arts package for TDE| keyword={{Template:keyword_en_tde}}| description=Building, installing and configuring a working Arts package for TDE and Slackware Linux | link_page=TDE_arts}}
+
{{header_en|title=Building a dbus-tqt package for TDE| keyword={{Template:keyword_en_tde}}| description=Building, installing and configuring a working dbus-tqt package for TDE and Slackware Linux | link_page=TDE_dbus-tqt}}
  
== ARTS ==
 
 
[[En/trinity_desktop_environment#Prerequisites | TDE - Prerequisites]]
 
[[En/trinity_desktop_environment#Prerequisites | TDE - Prerequisites]]
  
'''A'''nalog '''R'''eal '''T'''ime '''S'''ynthesizer is a multimedia library used by KDE 2, KDE 3 and TDE whose main goal consists of simulating an analog synthesizer used by the desktop environments and their many applications. '''An integrated sound server''', the '''artsd''' daemon, is part of the library and is used to merge distinct sound streams in real time. In later Linux distributions the mixer function shifted to [http://www.alsa-project.org/main/index.php/Main_Page '''ALSA'''] the Linux kernel sound subsystem. ARts '''is no longer in active development and hasn't been since 2004''' when it was replaced by '''the Phonon API''' in KDE 4.
+
'''D-Bus''' is a software library used for easy inter process communication and message handling. D-Bus was adopted by many modern desktop environments such as [http://www.gnome.org GNOME] or [http://www.kde.org KDE] to allow applications to talk to one another. The '''dbus-tqt package contains libraries integrating D-Bus to QT3''' and, together with its twin dbus-1-tqt, is a prerequisite for building and running the '''Trinity Desktop Environment'''. More information about D-Bus can be found at the web site of project [http://www.freedesktop.org/wiki/Software/dbus freedesktop] which coordinates software development and documentation management.
  
=== ARts and Slackware ===
+
=== D-Bus-Tqt and Slackware ===
  
ARts is part of the prerequisite packages for TDE. Its build scripts '''were ported to [http://www.cmake.org cmake]''' therefore the '''autotools''' build suite is no longer needed to configure and compile the source code. A build script was written based on the official ''' Slackware 13.0 slackbuild script for ARts''' with some updates to integrate cmake. The  '''/opt/trinity''' directory was used as root directory for the package both to ensure a pacific coexistence with KDE 4 and to uniform ARts configuration to the other packages. The '''-DCMAKE_SKIP_RPATH="OFF"''' flag was imposed to the cmake command as suggested int the [http://www.trinitydesktop.org/wiki/bin/view/Developers/HowToBuild TDE build how-to]. The flag will allow ARTs to execute command during the build process.
+
There is no dbus-tqt equivalent among the Slackware 13.0 KDE 3 packages. A build script was written using the [http://www.trinitydesktop.org/wiki/bin/view/Developers/HowToBuild TDE documentation] and the out of support TDE build kit for Slackware as reference. All packages listed in the prerequisite category were '''ported from autotools to [http://www.cmake.org cmake]''' and dbus-tqt is no exception. Cmake is used to configure and execute a full build from source code. In accordance to other packages configuration, '''/opt/trinity''' was used ad root directory for dbus-tqt. Cmake was configured to use standard TDE build options as no special requirement emerged from the documentation. Some of the main script lines and related comments will follow.
  
The slackbuild script for the ARts package is part of the archive found at the following [http://www.giustetti.net/resource/slackbuild/tde/35132/arts.tar.gz link]. Some comments to the commands used through the script to ensure a smooth build follow.
+
The build script '''must clean the cmake cache''':
 
 
First of all you need to '''clean the cmake cache'''. Task accomplished by lines:
 
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
   # Clean cmake cache
 
   # Clean cmake cache
 
   find . -name CMakeCache.txt -exec rm {} \;
 
   find . -name CMakeCache.txt -exec rm {} \;
 
</syntaxhighlight>
 
</syntaxhighlight>
Then you must '''create a directory''' where to compile the source code and store output files. ''Cmake seems to have a preference for '''build''' as directory name. It won't work otherwise'':
+
Then '''create a new directory''' where to build source code and save output binary files. As for previously built packages ''the directory was named '''build''' in order for cmake to find it'':
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
   # Create a directory where to build source (cmake wants the name to be build).
 
   # Create a directory where to build source (cmake wants the name to be build).
Line 24: Line 21:
 
   cd build
 
   cd build
 
</syntaxhighlight>
 
</syntaxhighlight>
'''Qt library paths are needed''' for scripts to find binary files while building the source code:
+
The build script '''specifically sets Qt libraries path''' in order for build scripts to find them at build time:
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
   # Add temporary paths to handle new libraries during build
 
   # Add temporary paths to handle new libraries during build
Line 33: Line 30:
 
   export PKG_CONFIG_PATH=:/usr/lib${LIBDIRSUFFIX}/pkgconfig:/opt/trinity/lib${LIBDIRSUFFIX}/pkgconfig:$PKG_CONFIG_PATH
 
   export PKG_CONFIG_PATH=:/usr/lib${LIBDIRSUFFIX}/pkgconfig:/opt/trinity/lib${LIBDIRSUFFIX}/pkgconfig:$PKG_CONFIG_PATH
 
</syntaxhighlight>
 
</syntaxhighlight>
Finally you can run cmake with the aforementioned option:
+
And eventually runs the cmake command with standard options as suggested in the official documentation:
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
    -DCMAKE_C_FLAGS:STRING="${SLKCFLAGS}" \
+
  cmake ${TMP}/tmp-${PRGNAM}/${PRGNAM}-${VERSION} \1
 +
      -DCMAKE_C_FLAGS:STRING="${SLKCFLAGS}" \
 
       -DCMAKE_CXX_FLAGS:STRING="${SLKCFLAGS}" \
 
       -DCMAKE_CXX_FLAGS:STRING="${SLKCFLAGS}" \
 
       -DCMAKE_INSTALL_PREFIX=${PREFIX} \
 
       -DCMAKE_INSTALL_PREFIX=${PREFIX} \
      '''-DCMAKE_SKIP_RPATH="OFF"''' \
 
 
       -DSYSCONF_INSTALL_DIR="/etc/trinity" \
 
       -DSYSCONF_INSTALL_DIR="/etc/trinity" \
 
       -DLIB_SUFFIX=${LIBDIRSUFFIX} \
 
       -DLIB_SUFFIX=${LIBDIRSUFFIX} \
 
       -DQT_VERSION=3 \
 
       -DQT_VERSION=3 \
 
       -DQT_INCLUDE_DIR=/opt/trinity/include \
 
       -DQT_INCLUDE_DIR=/opt/trinity/include \
      2>&1 | tee ${OUTPUT}/${PRGNAM}_configure.log
+
      2>&1 | tee ${OUTPUT}/${PRGNAM}_configure.log
 
</syntaxhighlight>
 
</syntaxhighlight>
And go on running the '''make''' command to build all then execute the packaging steps.
+
Once the configuration successfully concludes, the script runs the make command then goes on with packaging the software.
  
The outcome package can be installed recurring to the '''installpkg''' command as usual in Slackware linux.  
+
A full script can be downloaded from the following [http://www.giustetti.net/resource/slackbuild/tde/35132/dbus-tqt.tar.gz link]. The output package can be installed by mean of command '''installpkg''' as usual in Slackware Linux.
  
  
Line 54: Line 51:
  
 
External Links
 
External Links
 +
 
----
 
----
 +
 
* [http://www.trinitydesktop.org/wiki/bin/view/Developers/HowToBuild TDE build guide]
 
* [http://www.trinitydesktop.org/wiki/bin/view/Developers/HowToBuild TDE build guide]
* [http://en.wikipedia.org/wiki/ARts Wikipedia ARts page]
+
* [http://www.freedesktop.org/wiki/Software/dbus Project freedesktop D-Bus page]
* [http://www.arts-project.org Arts project home page]
+
* [http://qt-project.org/doc/qt-4.8/intro-to-dbus.html D-Bus QT page]
* [http://www.arts-project.org/doc/mcop-doc/artsd-faq.html Arts project FAQ]
+
* [http://en.wikipedia.org/wiki/D-Bus Wikipedia D-Bus page]
* [http://multimedia.kde.org Phonon: ARts replacement]
 
  
 
----
 
----
  
{{footer_en | link_page=TDE_arts}}
+
{{footer_en | link_page=TDE_dbus-tqt}}

Revision as of 14:39, 21 December 2016

Welcome to Simone Giustetti's wiki pages.


Languages: English - Italiano


TDE - Prerequisites

D-Bus is a software library used for easy inter process communication and message handling. D-Bus was adopted by many modern desktop environments such as GNOME or KDE to allow applications to talk to one another. The dbus-tqt package contains libraries integrating D-Bus to QT3 and, together with its twin dbus-1-tqt, is a prerequisite for building and running the Trinity Desktop Environment. More information about D-Bus can be found at the web site of project freedesktop which coordinates software development and documentation management.

D-Bus-Tqt and Slackware

There is no dbus-tqt equivalent among the Slackware 13.0 KDE 3 packages. A build script was written using the TDE documentation and the out of support TDE build kit for Slackware as reference. All packages listed in the prerequisite category were ported from autotools to cmake and dbus-tqt is no exception. Cmake is used to configure and execute a full build from source code. In accordance to other packages configuration, /opt/trinity was used ad root directory for dbus-tqt. Cmake was configured to use standard TDE build options as no special requirement emerged from the documentation. Some of the main script lines and related comments will follow.

The build script must clean the cmake cache:

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

Then create a new directory where to build source code and save output binary files. 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

The build script specifically sets Qt libraries path 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

And eventually runs the cmake command with standard options as suggested in the official documentation:

   cmake ${TMP}/tmp-${PRGNAM}/${PRGNAM}-${VERSION} \1
      -DCMAKE_C_FLAGS:STRING="${SLKCFLAGS}" \
      -DCMAKE_CXX_FLAGS:STRING="${SLKCFLAGS}" \
      -DCMAKE_INSTALL_PREFIX=${PREFIX} \
      -DSYSCONF_INSTALL_DIR="/etc/trinity" \
      -DLIB_SUFFIX=${LIBDIRSUFFIX} \
      -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