Changes

4,228 bytes added ,  12:32, 14 November 2013
Created page with 'Welcome to Simone Giustetti's wiki pages. Languages: '''English''' - [http://www.giustetti.net/wiki/index.php?title=TDE_tqtinterface Italiano] ---- == TQT-INTERFACE == [[En/t…'
Welcome to Simone Giustetti's wiki pages.


Languages: '''English''' - [http://www.giustetti.net/wiki/index.php?title=TDE_tqtinterface Italiano]

----

== TQT-INTERFACE ==
[[En/trinity_desktop_environment#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 [http://www.trinitydesktop.org/wiki/bin/view/Developers/HowToBuild official documentation] of the TDE project. Reading the documentation page you'll learn the designed build tool is [http://www.cmake.org 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 [http://www.giustetti.net/resource/slackbuild/tde/35132/tqtinterface.tar.gz 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 seem 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
----
* [http://www.trinitydesktop.org/wiki/bin/view/Developers/HowToBuild TDE build guide]
* [http://www.trinitydesktop.org/wiki/bin/view/Developers/UnderstandingTheTQTInterface Tqt Interface page]
* [http://www.trinitydesktop.org/wiki/bin/view/Developers/TQtForQt3 Tqt Interface for Qt3 development status]
* [http://www.trinitydesktop.org/wiki/bin/view/Developers/TQtForQt4 Tqt Interface for Qt4 porting status]
----

Languages: '''English''' - [http://www.giustetti.net/wiki/index.php?title=TDE_tqtinterface Italiano]