En/TDE tqtinterface

From Studiosg
Jump to: navigation, search

Welcome to Simone Giustetti's wiki pages.


Languages: English - Italiano


TQT-INTERFACE

TDE - Prerequisites

The name says it all: Tqt Interface is a library aiming to abstract class names, function names and namespaces of the underlying Qt toolkit. Initially designed as a mean to ease porting the Trinity Desktop Environment suite from Qt3 to Qt4, Tqt-interface evolved to consent the coexistence of code from both libraries. Code coexistence permits developers to use the latest library where needed to upgrade TDE while maintaining the remaining environment mostly unaltered. Tqt-interface is a mandatory prerequisite to successfully build the TDE desktop environment.

TQT-INTERFACE and Slackware

Tqt-interface is a TDE specific software library with no equivalent in KDE. No build script to use as reference ever existed in Slackware Linux. Anyway the source code can be compiled and packaged following some basic rules found in the official documentation of the TDE project. Reading the documentation page you'll learn the designed build tool is cmake. Documentation suggests the use of /usr as root directory for the package. The suggestion is constrained to cmake port completion. As the port seems concluded for Tqt-interface at least, /opt/trinity was chosen as root directory uniforming all packages to one standard. The last rule found in the documentation consists of imposing the -DQT_VERSION=3 flag to the cmake command.

A slackbuild script for the package can be extracted from the archive found at the following link. Some notes about the command issued by the script to ensure a smooth build follow.

First of all you need to clean the cmake cache. Task accomplished by lines:

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

Then you must create a directory where to compile the source code and store binary files. Cmake seems to have a preference for build as directory name. It won't work otherwise:

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

Qt library paths are needed for scripts to find binary files while building the source code:

   # 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

Finally you can run cmake with the aforementioned option:

   cmake ${TMP}/tmp-${PRGNAM}/${PRGNAM}-${VERSION} \
      -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

The environment is now configured and you can go on running make followed by some minor packaging commands.

The outcome package can be installed recurring to the installpkg command 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