DEB tqt3: adapt to tqmoc

Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
pull/373/head
Michele Calgaro 2 months ago
parent 752f1174fe
commit 807fa03e79
Signed by: MicheleC
GPG Key ID: 2A75B7CA8ADED5CF

@ -5,92 +5,92 @@ Qt for Debian README
This README is intended to give developers and users exact information This README is intended to give developers and users exact information
about how the qt-x11-free package provided by TrollTech AS has been packaged about how the qt-x11-free package provided by TrollTech AS has been packaged
for Debian in case you either want to faciliate it for development for Debian in case you either want to faciliate it for development
of applications and libraries or plugins using the Qt class library. With of applications and libraries or plugins using the Qt class library. With
qt-x11-3.1.1, the Debian packages have been massively restructured to get qt-x11-3.1.1, the Debian packages have been massively restructured to get
the most out of theoriginal Qt package and spit the contents up into the most out of theoriginal Qt package and spit the contents up into
several packages so that they make the most sensefor several groups of several packages so that they make the most sensefor several groups of
users; developers, application users, translators of Qt-based users; developers, application users, translators of Qt-based
applications and Debian packagers who are packaging applications developed applications and Debian packagers who are packaging applications developed
with Qt.2. with Qt.2.
2. General Overview 2. General Overview
As Qt is a huge package that contains a complete environment for As Qt is a huge package that contains a complete environment for
developers, it needs to be split up into several packages that make it developers, it needs to be split up into several packages that make it
easier for everyone else to handle it and not to retquire easier for everyone else to handle it and not to retquire
unnecessary disk space for end-users. Additionally, Qt can be configured unnecessary disk space for end-users. Additionally, Qt can be configured
in several ways - and therefore also used in several ways. Qt development in several ways - and therefore also used in several ways. Qt development
usually retquires the environment variable QTDIR. As Debian is placing usually retquires the environment variable QTDIR. As Debian is placing
libraries and header files in a tquite specific filesystem order, this libraries and header files in a tquite specific filesystem order, this
usually breaks setting a single environment variable to meet the usually breaks setting a single environment variable to meet the
retquirements of packages. Therefore, symlinks are used to set up the system retquirements of packages. Therefore, symlinks are used to set up the system
to meet both, the Debian filesystem standard and the QTDIR variable. All of to meet both, the Debian filesystem standard and the QTDIR variable. All of
Qt (so the QTDIR path) is available in /usr/share/tqt3. If you need to set Qt (so the QTDIR path) is available in /usr/share/tqt3. If you need to set
QTDIR, do export QTDIR=/usr/share/tqt3 QTDIR, do export QTDIR=/usr/share/tqt3
As far as the common build configuration goes, we note explicitely that the As far as the common build configuration goes, we note explicitely that the
Debian package of Qt will in very rare cases break the compilation (most Debian package of Qt will in very rare cases break the compilation (most
likely the linking) of applications on Debian which use Qt, in particular likely the linking) of applications on Debian which use Qt, in particular
utilizing styles in an incorrect way by deriving from one of the styles utilizing styles in an incorrect way by deriving from one of the styles
that ship with Qt. In case you are a Debian packager and encounter that ship with Qt. In case you are a Debian packager and encounter
problems, contact Debian Qt/KDE Maintainers (debian-qt-kde@lists.debian.org). problems, contact Debian Qt/KDE Maintainers (debian-qt-kde@lists.debian.org).
We will tell you why things don't work and what you should communicate on We will tell you why things don't work and what you should communicate on
with the programmers of your application that you are packaging. The build with the programmers of your application that you are packaging. The build
configuration generally is intended to provide a Qt version that is as configuration generally is intended to provide a Qt version that is as
small as possible in terms of the memory size it retquires. Therefore, small as possible in terms of the memory size it retquires. Therefore,
everything inside Qt that can be compiled as plugins has been compiled that everything inside Qt that can be compiled as plugins has been compiled that
way. This includes: way. This includes:
- imageformats: jpeg and mng - codecs (for languages like arab, japanese - imageformats: jpeg and mng - codecs (for languages like arab, japanese
etc provided with Qt) etc provided with Qt)
- sql drivers for databases (MySQL, ODBC and PostgreSQL) - sql drivers for databases (MySQL, ODBC and PostgreSQL)
The only exception is the imageformat png which has been compiled built-in The only exception is the imageformat png which has been compiled built-in
due to the fact that there is literally no program that uses no icons at due to the fact that there is literally no program that uses no icons at
all and icons are to be used preferrably in png format. The plugins are all all and icons are to be used preferrably in png format. The plugins are all
located under /usr/lib/tqt3/plugins. This is also the install location you located under /usr/lib/tqt3/plugins. This is also the install location you
should choose as a package maintainer for should choose as a package maintainer for
qt-plugins so the user doesn't have to customize his library path for qt-plugins so the user doesn't have to customize his library path for
loading Qt plugins. The only exception is that KDE delivers a set of Qt loading Qt plugins. The only exception is that KDE delivers a set of Qt
plugins as well (mainly styles and designer plugins); those are placed in plugins as well (mainly styles and designer plugins); those are placed in
/usr/lib/trinity/plugins. /usr/lib/trinity/plugins.
QMotif Extension: As this code is only available in commercial environments QMotif Extension: As this code is only available in commercial environments
(and produces a static library libqmotif.a anyway that those commercial (and produces a static library libqmotif.a anyway that those commercial
applications have to be linked against in addition to Qt), we left out all applications have to be linked against in addition to Qt), we left out all
header files of the libtqt3-headers package that are belonging to this header files of the libtqt3-headers package that are belonging to this
QMotif extension. QMotif extension.
Oracle Database driver, Sybase & Microsoft SQL Server driver: Those drivers Oracle Database driver, Sybase & Microsoft SQL Server driver: Those drivers
are only available in a commercial version of Qt due to license are only available in a commercial version of Qt due to license
incompatibilities with the GPL. If you need to faciliate those drivers, incompatibilities with the GPL. If you need to faciliate those drivers,
please visit http://www.trolltech.com and have a read at please visit http://www.trolltech.com and have a read at
http://doc.trolltech.com/3.0/sql-driver.html. http://doc.trolltech.com/3.0/sql-driver.html.
3. Packages (End-User)
The Qt built has been split up into several packages that allow for easy 3. Packages (End-User)
installation for all types of users. The End-user usually only retquires to
have the following packages installed to run an application that links The Qt built has been split up into several packages that allow for easy
installation for all types of users. The End-user usually only retquires to
have the following packages installed to run an application that links
against Qt: against Qt:
Threaded version:libtqt3-mt (the library libtqt-mt.so.* and libtqui.so.* for Threaded version:libtqt3-mt (the library libtqt-mt.so.* and libtqui.so.* for
loading designer-made user interfaces at runtime). loading designer-made user interfaces at runtime).
Optionally depending on the program's retquirements: Optionally depending on the program's retquirements:
libtqt3-mt-odbc libtqt3-mt-odbc
libtqt3-mt-mysql libtqt3-mt-mysql
libtqt3-mt-psql libtqt3-mt-psql
In addition to the libraries, it may make sense to install the program In addition to the libraries, it may make sense to install the program
qtconfig to customize the look and behaviorof Qt programs. If you have KDE qtconfig to customize the look and behaviorof Qt programs. If you have KDE
installed, the KDE control center will take this task automatically in most installed, the KDE control center will take this task automatically in most
cases. qtconfig is available in the package tqt3-qtconfig. cases. qtconfig is available in the package tqt3-qtconfig.
Also, Qt programs can make use of the online-help tool that ships with Qt, Also, Qt programs can make use of the online-help tool that ships with Qt,
the Qt Assistant. The Assistant can be installed with the package the Qt Assistant. The Assistant can be installed with the package
qt3-assistant. qt3-assistant.
Qt Configuration files Qt Configuration files
@ -104,80 +104,80 @@ assistant as well as qtconfig.
4. Packages (Package maintainers) 4. Packages (Package maintainers)
In addition to the library, a package maintainer will retquire an additional In addition to the library, a package maintainer will retquire an additional
set of packages to compile a package that retquires Qt. Depending on the set of packages to compile a package that retquires Qt. Depending on the
version of the qt library, you will retquire a different set of packages; version of the qt library, you will retquire a different set of packages;
the most common option should be to make your application link against the the most common option should be to make your application link against the
multi-threaded version (-mt).Packages necessary for compiling Qt multi-threaded version (-mt).Packages necessary for compiling Qt
applications from source: applications from source:
libtqt3-mt-dev (use libtqt3-dev for linking against -lqt, this package only libtqt3-mt-dev (use libtqt3-dev for linking against -ltqt, this package only
contains the .so files and the header file for libtqui.so) contains the .so files and the header file for libtqui.so)
libtqt3-headers (header files for libqt and libtqt-mt) libtqt3-headers (header files for libtqt and libtqt-mt)
qt3-dev-tools (this package contains the tools uic and moc as well as tqt3-dev-tools (this package contains the tools tquic and tqmoc as well as
qmake, retquired for building Qt applications) tqmake, required for building TQt applications)
If, however, you encounter an older program not to compile with this set If, however, you encounter an older program not to compile with this set
read the FAQ at the end of this document. read the FAQ at the end of this document.
5. Packages (Developers) 5. Packages (Developers)
In addition to the packages that packagers retquire, a developer usually In addition to the packages that packagers retquire, a developer usually
will retquire the Qt API documentationas well as tools like the assistant, will retquire the Qt API documentationas well as tools like the assistant,
linguist or designer. However, you should be fine with installing the API linguist or designer. However, you should be fine with installing the API
documentation that you can browse with a webbrowser, optionally with the documentation that you can browse with a webbrowser, optionally with the
assistant. They are available in /usr/share/doc/tqt3-doc/html. assistant. They are available in /usr/share/doc/tqt3-doc/html.
For a regular development environment, install tqt3-designer and tqt3-doc. For a regular development environment, install tqt3-designer and tqt3-doc.
For faciliating Qt's extended environment to write plugins for the Qt For faciliating Qt's extended environment to write plugins for the Qt
Designer or extend the Designer as well as utilizing the Qt Assistant by Designer or extend the Designer as well as utilizing the Qt Assistant by
calling it from within your program, install tqt3-apps-dev, which contains calling it from within your program, install tqt3-apps-dev, which contains
the static libraries and header files retquired for this functionality. the static libraries and header files retquired for this functionality.
For developers that work on migrating their program For developers that work on migrating their program
from any Qt version prior to Qt 3.x to the Qt 3.x platform you will find from any Qt version prior to Qt 3.x to the Qt 3.x platform you will find
additional tools in the tqt3-dev-tools-compat. additional tools in the tqt3-dev-tools-compat.
For using the QTranslator class and where to find the qm-file for qt as For using the QTranslator class and where to find the qm-file for qt as
well as where to place your translations,see the next section. well as where to place your translations,see the next section.
If your program doesn't compile with those settings in case you have If your program doesn't compile with those settings in case you have
started your project with Qt 1.x or 2.x, please read the FAQ section at the started your project with Qt 1.x or 2.x, please read the FAQ section at the
end of this document. end of this document.
5. Packages (Translators) 5. Packages (Translators)
In order to translate a Qt program into any other language, the Qt 3 way to In order to translate a Qt program into any other language, the Qt 3 way to
do this is to let the developer create a ts-file containing the strings do this is to let the developer create a ts-file containing the strings
that the program exposes on the user interface. The tools to create the that the program exposes on the user interface. The tools to create the
ts-file and to create the final qm (Q-message binary) file, lupdate and ts-file and to create the final qm (Q-message binary) file, lupdate and
lrelease, are included in tqt3-dev-tools.The single translator that only lrelease, are included in tqt3-dev-tools.The single translator that only
gets provided the ts file and has to return a translated ts file, it gets provided the ts file and has to return a translated ts file, it
is absolutely enough to install tqt3-linguist; the package tqt3-assistant can is absolutely enough to install tqt3-linguist; the package tqt3-assistant can
be installed to access the online-help for the Qt Linguist itself. be installed to access the online-help for the Qt Linguist itself.
In case you're converting an application using Qt prior to Qt 3, you may In case you're converting an application using Qt prior to Qt 3, you may
want to uitilize the tqt3-dev-tools-compat which include the necessary tools want to uitilize the tqt3-dev-tools-compat which include the necessary tools
to convert older qm files to the new ts file standard. to convert older qm files to the new ts file standard.
Locations of message translations: Locations of message translations:
Qt ships with a set of translations for the strings used inside Qt. Those Qt ships with a set of translations for the strings used inside Qt. Those
translations will be installed into /usr/share/tqt3/translations (qm files translations will be installed into /usr/share/tqt3/translations (qm files
only), which equals $QTDIR/translations respectively only), which equals $QTDIR/translations respectively
qInstallPath() + QString( "/translations" ). qInstallPath() + QString( "/translations" ).
The configure option --translationdir has been set to /usr/share/tqt3/translations The configure option --translationdir has been set to /usr/share/tqt3/translations
accordingly since it was introduced in Qt 3.2. accordingly since it was introduced in Qt 3.2.
To correctly enable your program to display the translations to the Qt To correctly enable your program to display the translations to the Qt
library and to load the translation of the program itself, we currently library and to load the translation of the program itself, we currently
suggest to either install your translations along with any other data files suggest to either install your translations along with any other data files
into/usr/share/<appname>/, translation files into the subdirectory into/usr/share/<appname>/, translation files into the subdirectory
translations (that is /usr/share/<appname>/translations) The code that your translations (that is /usr/share/<appname>/translations) The code that your
application should use to load the Qt translation will have to look like application should use to load the Qt translation will have to look like
the following: the following:
int main( int argc, char **argv ) int main( int argc, char **argv )
{ {
@ -185,69 +185,69 @@ int main( int argc, char **argv )
// translation file for Qt // translation file for Qt
QTranslator qt( 0 ); QTranslator qt( 0 );
qt.load( QString( "qt_" ) + QTextCodec::locale(), qInstallPath() + qt.load( QString( "qt_" ) + QTextCodec::locale(), qInstallPath() +
QString( "/translations" ); QString( "/translations" );
app.installTranslator( &qt ); app.installTranslator( &qt );
// translation file for application strings // translation file for application strings
QTranslator myapp( 0 ); QTranslator myapp( 0 );
myapp.load( QString( "myapp_" ) + QTextCodec::locale(), "." ); myapp.load( QString( "myapp_" ) + QTextCodec::locale(), "." );
// use a substitue for $prefix/share/appname/translations here // use a substitue for $prefix/share/appname/translations here
app.installTranslator( &myapp ); app.installTranslator( &myapp );
6. Frequently Asked Questions 6. Frequently Asked Questions
Using Qt for Debian as a developer or packager Using Qt for Debian as a developer or packager
---------------------------------------------- ----------------------------------------------
Q: I want to compile a source package that utilizes qmake to build the Q: I want to compile a source package that utilizes qmake to build the
Makefiles. What do I need to do to makeit work ? Makefiles. What do I need to do to makeit work ?
A: qmake retquires two environment variables to be set, QTDIR and QMAKESPEC. A: qmake retquires two environment variables to be set, QTDIR and QMAKESPEC.
To make it work, do To make it work, do
export QTDIR=/usr/share/tqt3 export QTDIR=/usr/share/tqt3
export QMAKESPEC=linux-g++ export QMAKESPEC=linux-g++
Then run qmake -o Makefile <projectfile>.pro Then run qmake -o Makefile <projectfile>.pro
After that, the Makefile is correctly created to build your application on After that, the Makefile is correctly created to build your application on
Debian. As a packager, export thosetwo variables in the rules file before Debian. As a packager, export thosetwo variables in the rules file before
calling qmake. calling qmake.
Q: I have an application that when linking gives me symbol referencing Q: I have an application that when linking gives me symbol referencing
errors to Q*Style. Why does my applicationnot link correctly ? errors to Q*Style. Why does my applicationnot link correctly ?
A: The author of the program is using the styles that ship with Qt directly A: The author of the program is using the styles that ship with Qt directly
instead of using the QStylePlugin interface.If you are the author of the instead of using the QStylePlugin interface.If you are the author of the
program, change your program to use QStylePlugin. If you are a packager, program, change your program to use QStylePlugin. If you are a packager,
write to theauthor of the program that he is assuming that the styles write to theauthor of the program that he is assuming that the styles
shipped with Qt are built-in to the library which is not the case on Debian shipped with Qt are built-in to the library which is not the case on Debian
and that he please should fix this and use QStylePlugin. and that he please should fix this and use QStylePlugin.
Q: Where are all the examples and tutorials ? And how do I build them ? Q: Where are all the examples and tutorials ? And how do I build them ?
A: Qt ships with examples and tutorials; so does the Linguist and Designer. A: Qt ships with examples and tutorials; so does the Linguist and Designer.
The tutorials and examples are compressed tarballs which you can unpack with The tutorials and examples are compressed tarballs which you can unpack with
tar -zxvf into your home directory. Change into the tqt3-examples directory tar -zxvf into your home directory. Change into the tqt3-examples directory
and run the provided ./build-examples script. All Qt examples and tutorials, and run the provided ./build-examples script. All Qt examples and tutorials,
including those for designer and the linguist, will be compiled. You will including those for designer and the linguist, will be compiled. You will
notice however, that those examples that inherit from style classes which notice however, that those examples that inherit from style classes which
are not built-in into Qt but configured as a plugin will not compile due are not built-in into Qt but configured as a plugin will not compile due
to the fact that they can't link to the Qt library. to the fact that they can't link to the Qt library.
Q: I'm writing a pure Qt application and I want to ship it with a default Q: I'm writing a pure Qt application and I want to ship it with a default
configuration file. Where does that global configuration file go if I make configuration file. Where does that global configuration file go if I make
use of the QSettings class ? use of the QSettings class ?
A: With qt-3.2.0, Trolltech has introduced a configure option to Qt called A: With qt-3.2.0, Trolltech has introduced a configure option to Qt called
--sysconfdir which we intentionally set to /etc/tqt3 similar to /etc/trinity for --sysconfdir which we intentionally set to /etc/tqt3 similar to /etc/trinity for
KDE programs. Install your application's system wide configuration file KDE programs. Install your application's system wide configuration file
to /etc/tqt3. to /etc/tqt3.
Q: I have a question not covered by this FAQ and README file. Who should I Q: I have a question not covered by this FAQ and README file. Who should I
turn to ? turn to ?
A: Please turn to Debian Qt/KDE Maintainers (debian-qt-kde@lists.debian.org) A: Please turn to Debian Qt/KDE Maintainers (debian-qt-kde@lists.debian.org)
for any questions regarding Qt on Debian. for any questions regarding Qt on Debian.
-- Ralf Nolden <nolden@kde.org> Sun, 26 Jan 2003 20:39:19 +0100 -- Ralf Nolden <nolden@kde.org> Sun, 26 Jan 2003 20:39:19 +0100

@ -155,7 +155,7 @@ Depends: ${shlibs:Depends}
Recommends: libtqt3-mt-dev Recommends: libtqt3-mt-dev
Description: TQt3 development tools Description: TQt3 development tools
This package contains all tools that are necessary to build programs This package contains all tools that are necessary to build programs
that are written using TQt3. These are: qmake, uic and moc. that are written using TQt3. These are: tqmake, tquic and tqmoc.
For TQt3 development, you most likely want to install this package. For TQt3 development, you most likely want to install this package.
Package: tqt3-designer Package: tqt3-designer

@ -217,7 +217,7 @@ clean::
fi fi
-rm -rf .qmake.cache src/.qmake.internal.cache tools/designer/designer/.qmake.internal.cache qmake/GNUmakefile \ -rm -rf .qmake.cache src/.qmake.internal.cache tools/designer/designer/.qmake.internal.cache qmake/GNUmakefile \
config.status bin/moc bin/tqmake src/moc/*.o mkspecs/default lib/lib* `pwd`/debian/doc $(TMP_INSTALL) \ config.status bin/tqmoc bin/tqmake src/tqmoc/*.o mkspecs/default lib/lib* `pwd`/debian/doc $(TMP_INSTALL) \
src/tools/qconfig.cpp include/ntqconfig.h include/ntqmodules.h plugins/accessibleqtwidgets.prl \ src/tools/qconfig.cpp include/ntqconfig.h include/ntqmodules.h plugins/accessibleqtwidgets.prl \
config.tests/unix/ipv6/ipv6test config.tests/unix/ipv6/ipv6test.o config.tests/unix/ptrsize/ptrsizetest.o \ config.tests/unix/ipv6/ipv6test config.tests/unix/ipv6/ipv6test.o config.tests/unix/ptrsize/ptrsizetest.o \
config.tests/unix/ptrsize/ptrsizetest config.tests/unix/endian/endiantest.o \ config.tests/unix/ptrsize/ptrsizetest config.tests/unix/endian/endiantest.o \

@ -5,92 +5,92 @@ Qt for Debian README
This README is intended to give developers and users exact information This README is intended to give developers and users exact information
about how the qt-x11-free package provided by TrollTech AS has been packaged about how the qt-x11-free package provided by TrollTech AS has been packaged
for Debian in case you either want to faciliate it for development for Debian in case you either want to faciliate it for development
of applications and libraries or plugins using the Qt class library. With of applications and libraries or plugins using the Qt class library. With
qt-x11-3.1.1, the Debian packages have been massively restructured to get qt-x11-3.1.1, the Debian packages have been massively restructured to get
the most out of theoriginal Qt package and spit the contents up into the most out of theoriginal Qt package and spit the contents up into
several packages so that they make the most sensefor several groups of several packages so that they make the most sensefor several groups of
users; developers, application users, translators of Qt-based users; developers, application users, translators of Qt-based
applications and Debian packagers who are packaging applications developed applications and Debian packagers who are packaging applications developed
with Qt.2. with Qt.2.
2. General Overview 2. General Overview
As Qt is a huge package that contains a complete environment for As Qt is a huge package that contains a complete environment for
developers, it needs to be split up into several packages that make it developers, it needs to be split up into several packages that make it
easier for everyone else to handle it and not to retquire easier for everyone else to handle it and not to retquire
unnecessary disk space for end-users. Additionally, Qt can be configured unnecessary disk space for end-users. Additionally, Qt can be configured
in several ways - and therefore also used in several ways. Qt development in several ways - and therefore also used in several ways. Qt development
usually retquires the environment variable QTDIR. As Debian is placing usually retquires the environment variable QTDIR. As Debian is placing
libraries and header files in a tquite specific filesystem order, this libraries and header files in a tquite specific filesystem order, this
usually breaks setting a single environment variable to meet the usually breaks setting a single environment variable to meet the
retquirements of packages. Therefore, symlinks are used to set up the system retquirements of packages. Therefore, symlinks are used to set up the system
to meet both, the Debian filesystem standard and the QTDIR variable. All of to meet both, the Debian filesystem standard and the QTDIR variable. All of
Qt (so the QTDIR path) is available in /usr/share/tqt3. If you need to set Qt (so the QTDIR path) is available in /usr/share/tqt3. If you need to set
QTDIR, do export QTDIR=/usr/share/tqt3 QTDIR, do export QTDIR=/usr/share/tqt3
As far as the common build configuration goes, we note explicitely that the As far as the common build configuration goes, we note explicitely that the
Debian package of Qt will in very rare cases break the compilation (most Debian package of Qt will in very rare cases break the compilation (most
likely the linking) of applications on Debian which use Qt, in particular likely the linking) of applications on Debian which use Qt, in particular
utilizing styles in an incorrect way by deriving from one of the styles utilizing styles in an incorrect way by deriving from one of the styles
that ship with Qt. In case you are a Debian packager and encounter that ship with Qt. In case you are a Debian packager and encounter
problems, contact Debian Qt/KDE Maintainers (debian-qt-kde@lists.debian.org). problems, contact Debian Qt/KDE Maintainers (debian-qt-kde@lists.debian.org).
We will tell you why things don't work and what you should communicate on We will tell you why things don't work and what you should communicate on
with the programmers of your application that you are packaging. The build with the programmers of your application that you are packaging. The build
configuration generally is intended to provide a Qt version that is as configuration generally is intended to provide a Qt version that is as
small as possible in terms of the memory size it retquires. Therefore, small as possible in terms of the memory size it retquires. Therefore,
everything inside Qt that can be compiled as plugins has been compiled that everything inside Qt that can be compiled as plugins has been compiled that
way. This includes: way. This includes:
- imageformats: jpeg and mng - codecs (for languages like arab, japanese - imageformats: jpeg and mng - codecs (for languages like arab, japanese
etc provided with Qt) etc provided with Qt)
- sql drivers for databases (MySQL, ODBC and PostgreSQL) - sql drivers for databases (MySQL, ODBC and PostgreSQL)
The only exception is the imageformat png which has been compiled built-in The only exception is the imageformat png which has been compiled built-in
due to the fact that there is literally no program that uses no icons at due to the fact that there is literally no program that uses no icons at
all and icons are to be used preferrably in png format. The plugins are all all and icons are to be used preferrably in png format. The plugins are all
located under /usr/lib/tqt3/plugins. This is also the install location you located under /usr/lib/tqt3/plugins. This is also the install location you
should choose as a package maintainer for should choose as a package maintainer for
qt-plugins so the user doesn't have to customize his library path for qt-plugins so the user doesn't have to customize his library path for
loading Qt plugins. The only exception is that KDE delivers a set of Qt loading Qt plugins. The only exception is that KDE delivers a set of Qt
plugins as well (mainly styles and designer plugins); those are placed in plugins as well (mainly styles and designer plugins); those are placed in
/usr/lib/trinity/plugins. /usr/lib/trinity/plugins.
QMotif Extension: As this code is only available in commercial environments QMotif Extension: As this code is only available in commercial environments
(and produces a static library libqmotif.a anyway that those commercial (and produces a static library libqmotif.a anyway that those commercial
applications have to be linked against in addition to Qt), we left out all applications have to be linked against in addition to Qt), we left out all
header files of the libtqt3-headers package that are belonging to this header files of the libtqt3-headers package that are belonging to this
QMotif extension. QMotif extension.
Oracle Database driver, Sybase & Microsoft SQL Server driver: Those drivers Oracle Database driver, Sybase & Microsoft SQL Server driver: Those drivers
are only available in a commercial version of Qt due to license are only available in a commercial version of Qt due to license
incompatibilities with the GPL. If you need to faciliate those drivers, incompatibilities with the GPL. If you need to faciliate those drivers,
please visit http://www.trolltech.com and have a read at please visit http://www.trolltech.com and have a read at
http://doc.trolltech.com/3.0/sql-driver.html. http://doc.trolltech.com/3.0/sql-driver.html.
3. Packages (End-User)
The Qt built has been split up into several packages that allow for easy 3. Packages (End-User)
installation for all types of users. The End-user usually only retquires to
have the following packages installed to run an application that links The Qt built has been split up into several packages that allow for easy
installation for all types of users. The End-user usually only retquires to
have the following packages installed to run an application that links
against Qt: against Qt:
Threaded version:libtqt3-mt (the library libtqt-mt.so.* and libtqui.so.* for Threaded version:libtqt3-mt (the library libtqt-mt.so.* and libtqui.so.* for
loading designer-made user interfaces at runtime). loading designer-made user interfaces at runtime).
Optionally depending on the program's retquirements: Optionally depending on the program's retquirements:
libtqt3-mt-odbc libtqt3-mt-odbc
libtqt3-mt-mysql libtqt3-mt-mysql
libtqt3-mt-psql libtqt3-mt-psql
In addition to the libraries, it may make sense to install the program In addition to the libraries, it may make sense to install the program
qtconfig to customize the look and behaviorof Qt programs. If you have KDE qtconfig to customize the look and behaviorof Qt programs. If you have KDE
installed, the KDE control center will take this task automatically in most installed, the KDE control center will take this task automatically in most
cases. qtconfig is available in the package tqt3-qtconfig. cases. qtconfig is available in the package tqt3-qtconfig.
Also, Qt programs can make use of the online-help tool that ships with Qt, Also, Qt programs can make use of the online-help tool that ships with Qt,
the Qt Assistant. The Assistant can be installed with the package the Qt Assistant. The Assistant can be installed with the package
qt3-assistant. qt3-assistant.
Qt Configuration files Qt Configuration files
@ -104,80 +104,80 @@ assistant as well as qtconfig.
4. Packages (Package maintainers) 4. Packages (Package maintainers)
In addition to the library, a package maintainer will retquire an additional In addition to the library, a package maintainer will retquire an additional
set of packages to compile a package that retquires Qt. Depending on the set of packages to compile a package that retquires Qt. Depending on the
version of the qt library, you will retquire a different set of packages; version of the qt library, you will retquire a different set of packages;
the most common option should be to make your application link against the the most common option should be to make your application link against the
multi-threaded version (-mt).Packages necessary for compiling Qt multi-threaded version (-mt).Packages necessary for compiling Qt
applications from source: applications from source:
libtqt3-mt-dev (use libtqt3-dev for linking against -lqt, this package only libtqt3-mt-dev (use libtqt3-dev for linking against -ltqt, this package only
contains the .so files and the header file for libtqui.so) contains the .so files and the header file for libtqui.so)
libtqt3-headers (header files for libqt and libtqt-mt) libtqt3-headers (header files for libtqt and libtqt-mt)
qt3-dev-tools (this package contains the tools uic and moc as well as tqt3-dev-tools (this package contains the tools tquic and tqmoc as well as
qmake, retquired for building Qt applications) tqmake, required for building TQt applications)
If, however, you encounter an older program not to compile with this set If, however, you encounter an older program not to compile with this set
read the FAQ at the end of this document. read the FAQ at the end of this document.
5. Packages (Developers) 5. Packages (Developers)
In addition to the packages that packagers retquire, a developer usually In addition to the packages that packagers retquire, a developer usually
will retquire the Qt API documentationas well as tools like the assistant, will retquire the Qt API documentationas well as tools like the assistant,
linguist or designer. However, you should be fine with installing the API linguist or designer. However, you should be fine with installing the API
documentation that you can browse with a webbrowser, optionally with the documentation that you can browse with a webbrowser, optionally with the
assistant. They are available in /usr/share/doc/tqt3-doc/html. assistant. They are available in /usr/share/doc/tqt3-doc/html.
For a regular development environment, install tqt3-designer and tqt3-doc. For a regular development environment, install tqt3-designer and tqt3-doc.
For faciliating Qt's extended environment to write plugins for the Qt For faciliating Qt's extended environment to write plugins for the Qt
Designer or extend the Designer as well as utilizing the Qt Assistant by Designer or extend the Designer as well as utilizing the Qt Assistant by
calling it from within your program, install tqt3-apps-dev, which contains calling it from within your program, install tqt3-apps-dev, which contains
the static libraries and header files retquired for this functionality. the static libraries and header files retquired for this functionality.
For developers that work on migrating their program For developers that work on migrating their program
from any Qt version prior to Qt 3.x to the Qt 3.x platform you will find from any Qt version prior to Qt 3.x to the Qt 3.x platform you will find
additional tools in the tqt3-dev-tools-compat. additional tools in the tqt3-dev-tools-compat.
For using the QTranslator class and where to find the qm-file for qt as For using the QTranslator class and where to find the qm-file for qt as
well as where to place your translations,see the next section. well as where to place your translations,see the next section.
If your program doesn't compile with those settings in case you have If your program doesn't compile with those settings in case you have
started your project with Qt 1.x or 2.x, please read the FAQ section at the started your project with Qt 1.x or 2.x, please read the FAQ section at the
end of this document. end of this document.
5. Packages (Translators) 5. Packages (Translators)
In order to translate a Qt program into any other language, the Qt 3 way to In order to translate a Qt program into any other language, the Qt 3 way to
do this is to let the developer create a ts-file containing the strings do this is to let the developer create a ts-file containing the strings
that the program exposes on the user interface. The tools to create the that the program exposes on the user interface. The tools to create the
ts-file and to create the final qm (Q-message binary) file, lupdate and ts-file and to create the final qm (Q-message binary) file, lupdate and
lrelease, are included in tqt3-dev-tools.The single translator that only lrelease, are included in tqt3-dev-tools.The single translator that only
gets provided the ts file and has to return a translated ts file, it gets provided the ts file and has to return a translated ts file, it
is absolutely enough to install tqt3-linguist; the package tqt3-assistant can is absolutely enough to install tqt3-linguist; the package tqt3-assistant can
be installed to access the online-help for the Qt Linguist itself. be installed to access the online-help for the Qt Linguist itself.
In case you're converting an application using Qt prior to Qt 3, you may In case you're converting an application using Qt prior to Qt 3, you may
want to uitilize the tqt3-dev-tools-compat which include the necessary tools want to uitilize the tqt3-dev-tools-compat which include the necessary tools
to convert older qm files to the new ts file standard. to convert older qm files to the new ts file standard.
Locations of message translations: Locations of message translations:
Qt ships with a set of translations for the strings used inside Qt. Those Qt ships with a set of translations for the strings used inside Qt. Those
translations will be installed into /usr/share/tqt3/translations (qm files translations will be installed into /usr/share/tqt3/translations (qm files
only), which equals $QTDIR/translations respectively only), which equals $QTDIR/translations respectively
qInstallPath() + QString( "/translations" ). qInstallPath() + QString( "/translations" ).
The configure option --translationdir has been set to /usr/share/tqt3/translations The configure option --translationdir has been set to /usr/share/tqt3/translations
accordingly since it was introduced in Qt 3.2. accordingly since it was introduced in Qt 3.2.
To correctly enable your program to display the translations to the Qt To correctly enable your program to display the translations to the Qt
library and to load the translation of the program itself, we currently library and to load the translation of the program itself, we currently
suggest to either install your translations along with any other data files suggest to either install your translations along with any other data files
into/usr/share/<appname>/, translation files into the subdirectory into/usr/share/<appname>/, translation files into the subdirectory
translations (that is /usr/share/<appname>/translations) The code that your translations (that is /usr/share/<appname>/translations) The code that your
application should use to load the Qt translation will have to look like application should use to load the Qt translation will have to look like
the following: the following:
int main( int argc, char **argv ) int main( int argc, char **argv )
{ {
@ -185,69 +185,69 @@ int main( int argc, char **argv )
// translation file for Qt // translation file for Qt
QTranslator qt( 0 ); QTranslator qt( 0 );
qt.load( QString( "qt_" ) + QTextCodec::locale(), qInstallPath() + qt.load( QString( "qt_" ) + QTextCodec::locale(), qInstallPath() +
QString( "/translations" ); QString( "/translations" );
app.installTranslator( &qt ); app.installTranslator( &qt );
// translation file for application strings // translation file for application strings
QTranslator myapp( 0 ); QTranslator myapp( 0 );
myapp.load( QString( "myapp_" ) + QTextCodec::locale(), "." ); myapp.load( QString( "myapp_" ) + QTextCodec::locale(), "." );
// use a substitue for $prefix/share/appname/translations here // use a substitue for $prefix/share/appname/translations here
app.installTranslator( &myapp ); app.installTranslator( &myapp );
6. Frequently Asked Questions 6. Frequently Asked Questions
Using Qt for Debian as a developer or packager Using Qt for Debian as a developer or packager
---------------------------------------------- ----------------------------------------------
Q: I want to compile a source package that utilizes qmake to build the Q: I want to compile a source package that utilizes qmake to build the
Makefiles. What do I need to do to makeit work ? Makefiles. What do I need to do to makeit work ?
A: qmake retquires two environment variables to be set, QTDIR and QMAKESPEC. A: qmake retquires two environment variables to be set, QTDIR and QMAKESPEC.
To make it work, do To make it work, do
export QTDIR=/usr/share/tqt3 export QTDIR=/usr/share/tqt3
export QMAKESPEC=linux-g++ export QMAKESPEC=linux-g++
Then run qmake -o Makefile <projectfile>.pro Then run qmake -o Makefile <projectfile>.pro
After that, the Makefile is correctly created to build your application on After that, the Makefile is correctly created to build your application on
Debian. As a packager, export thosetwo variables in the rules file before Debian. As a packager, export thosetwo variables in the rules file before
calling qmake. calling qmake.
Q: I have an application that when linking gives me symbol referencing Q: I have an application that when linking gives me symbol referencing
errors to Q*Style. Why does my applicationnot link correctly ? errors to Q*Style. Why does my applicationnot link correctly ?
A: The author of the program is using the styles that ship with Qt directly A: The author of the program is using the styles that ship with Qt directly
instead of using the QStylePlugin interface.If you are the author of the instead of using the QStylePlugin interface.If you are the author of the
program, change your program to use QStylePlugin. If you are a packager, program, change your program to use QStylePlugin. If you are a packager,
write to theauthor of the program that he is assuming that the styles write to theauthor of the program that he is assuming that the styles
shipped with Qt are built-in to the library which is not the case on Debian shipped with Qt are built-in to the library which is not the case on Debian
and that he please should fix this and use QStylePlugin. and that he please should fix this and use QStylePlugin.
Q: Where are all the examples and tutorials ? And how do I build them ? Q: Where are all the examples and tutorials ? And how do I build them ?
A: Qt ships with examples and tutorials; so does the Linguist and Designer. A: Qt ships with examples and tutorials; so does the Linguist and Designer.
The tutorials and examples are compressed tarballs which you can unpack with The tutorials and examples are compressed tarballs which you can unpack with
tar -zxvf into your home directory. Change into the tqt3-examples directory tar -zxvf into your home directory. Change into the tqt3-examples directory
and run the provided ./build-examples script. All Qt examples and tutorials, and run the provided ./build-examples script. All Qt examples and tutorials,
including those for designer and the linguist, will be compiled. You will including those for designer and the linguist, will be compiled. You will
notice however, that those examples that inherit from style classes which notice however, that those examples that inherit from style classes which
are not built-in into Qt but configured as a plugin will not compile due are not built-in into Qt but configured as a plugin will not compile due
to the fact that they can't link to the Qt library. to the fact that they can't link to the Qt library.
Q: I'm writing a pure Qt application and I want to ship it with a default Q: I'm writing a pure Qt application and I want to ship it with a default
configuration file. Where does that global configuration file go if I make configuration file. Where does that global configuration file go if I make
use of the QSettings class ? use of the QSettings class ?
A: With qt-3.2.0, Trolltech has introduced a configure option to Qt called A: With qt-3.2.0, Trolltech has introduced a configure option to Qt called
--sysconfdir which we intentionally set to /etc/tqt3 similar to /etc/trinity for --sysconfdir which we intentionally set to /etc/tqt3 similar to /etc/trinity for
KDE programs. Install your application's system wide configuration file KDE programs. Install your application's system wide configuration file
to /etc/tqt3. to /etc/tqt3.
Q: I have a question not covered by this FAQ and README file. Who should I Q: I have a question not covered by this FAQ and README file. Who should I
turn to ? turn to ?
A: Please turn to Debian Qt/KDE Maintainers (debian-qt-kde@lists.debian.org) A: Please turn to Debian Qt/KDE Maintainers (debian-qt-kde@lists.debian.org)
for any questions regarding Qt on Debian. for any questions regarding Qt on Debian.
-- Ralf Nolden <nolden@kde.org> Sun, 26 Jan 2003 20:39:19 +0100 -- Ralf Nolden <nolden@kde.org> Sun, 26 Jan 2003 20:39:19 +0100

@ -156,7 +156,7 @@ Depends: ${shlibs:Depends}
Recommends: libtqt3-mt-dev Recommends: libtqt3-mt-dev
Description: TQt3 development tools Description: TQt3 development tools
This package contains all tools that are necessary to build programs This package contains all tools that are necessary to build programs
that are written using TQt3. These are: qmake, uic and moc. that are written using TQt3. These are: tqmake, tquic and tqmoc.
For TQt3 development, you most likely want to install this package. For TQt3 development, you most likely want to install this package.
Package: tqt3-designer Package: tqt3-designer

@ -222,7 +222,7 @@ clean::
fi fi
-rm -rf .qmake.cache src/.qmake.internal.cache tools/designer/designer/.qmake.internal.cache qmake/GNUmakefile \ -rm -rf .qmake.cache src/.qmake.internal.cache tools/designer/designer/.qmake.internal.cache qmake/GNUmakefile \
config.status bin/moc bin/tqmake src/moc/*.o mkspecs/default lib/lib* `pwd`/debian/doc $(TMP_INSTALL) \ config.status bin/tqmoc bin/tqmake src/tqmoc/*.o mkspecs/default lib/lib* `pwd`/debian/doc $(TMP_INSTALL) \
src/tools/qconfig.cpp include/ntqconfig.h include/ntqmodules.h plugins/accessibleqtwidgets.prl \ src/tools/qconfig.cpp include/ntqconfig.h include/ntqmodules.h plugins/accessibleqtwidgets.prl \
config.tests/unix/ipv6/ipv6test config.tests/unix/ipv6/ipv6test.o config.tests/unix/ptrsize/ptrsizetest.o \ config.tests/unix/ipv6/ipv6test config.tests/unix/ipv6/ipv6test.o config.tests/unix/ptrsize/ptrsizetest.o \
config.tests/unix/ptrsize/ptrsizetest config.tests/unix/endian/endiantest.o \ config.tests/unix/ptrsize/ptrsizetest config.tests/unix/endian/endiantest.o \

@ -5,92 +5,92 @@ Qt for Debian README
This README is intended to give developers and users exact information This README is intended to give developers and users exact information
about how the qt-x11-free package provided by TrollTech AS has been packaged about how the qt-x11-free package provided by TrollTech AS has been packaged
for Debian in case you either want to faciliate it for development for Debian in case you either want to faciliate it for development
of applications and libraries or plugins using the Qt class library. With of applications and libraries or plugins using the Qt class library. With
qt-x11-3.1.1, the Debian packages have been massively restructured to get qt-x11-3.1.1, the Debian packages have been massively restructured to get
the most out of theoriginal Qt package and spit the contents up into the most out of theoriginal Qt package and spit the contents up into
several packages so that they make the most sensefor several groups of several packages so that they make the most sensefor several groups of
users; developers, application users, translators of Qt-based users; developers, application users, translators of Qt-based
applications and Debian packagers who are packaging applications developed applications and Debian packagers who are packaging applications developed
with Qt.2. with Qt.2.
2. General Overview 2. General Overview
As Qt is a huge package that contains a complete environment for As Qt is a huge package that contains a complete environment for
developers, it needs to be split up into several packages that make it developers, it needs to be split up into several packages that make it
easier for everyone else to handle it and not to retquire easier for everyone else to handle it and not to retquire
unnecessary disk space for end-users. Additionally, Qt can be configured unnecessary disk space for end-users. Additionally, Qt can be configured
in several ways - and therefore also used in several ways. Qt development in several ways - and therefore also used in several ways. Qt development
usually retquires the environment variable QTDIR. As Debian is placing usually retquires the environment variable QTDIR. As Debian is placing
libraries and header files in a tquite specific filesystem order, this libraries and header files in a tquite specific filesystem order, this
usually breaks setting a single environment variable to meet the usually breaks setting a single environment variable to meet the
retquirements of packages. Therefore, symlinks are used to set up the system retquirements of packages. Therefore, symlinks are used to set up the system
to meet both, the Debian filesystem standard and the QTDIR variable. All of to meet both, the Debian filesystem standard and the QTDIR variable. All of
Qt (so the QTDIR path) is available in /usr/share/tqt3. If you need to set Qt (so the QTDIR path) is available in /usr/share/tqt3. If you need to set
QTDIR, do export QTDIR=/usr/share/tqt3 QTDIR, do export QTDIR=/usr/share/tqt3
As far as the common build configuration goes, we note explicitely that the As far as the common build configuration goes, we note explicitely that the
Debian package of Qt will in very rare cases break the compilation (most Debian package of Qt will in very rare cases break the compilation (most
likely the linking) of applications on Debian which use Qt, in particular likely the linking) of applications on Debian which use Qt, in particular
utilizing styles in an incorrect way by deriving from one of the styles utilizing styles in an incorrect way by deriving from one of the styles
that ship with Qt. In case you are a Debian packager and encounter that ship with Qt. In case you are a Debian packager and encounter
problems, contact Debian Qt/KDE Maintainers (debian-qt-kde@lists.debian.org). problems, contact Debian Qt/KDE Maintainers (debian-qt-kde@lists.debian.org).
We will tell you why things don't work and what you should communicate on We will tell you why things don't work and what you should communicate on
with the programmers of your application that you are packaging. The build with the programmers of your application that you are packaging. The build
configuration generally is intended to provide a Qt version that is as configuration generally is intended to provide a Qt version that is as
small as possible in terms of the memory size it retquires. Therefore, small as possible in terms of the memory size it retquires. Therefore,
everything inside Qt that can be compiled as plugins has been compiled that everything inside Qt that can be compiled as plugins has been compiled that
way. This includes: way. This includes:
- imageformats: jpeg and mng - codecs (for languages like arab, japanese - imageformats: jpeg and mng - codecs (for languages like arab, japanese
etc provided with Qt) etc provided with Qt)
- sql drivers for databases (MySQL, ODBC and PostgreSQL) - sql drivers for databases (MySQL, ODBC and PostgreSQL)
The only exception is the imageformat png which has been compiled built-in The only exception is the imageformat png which has been compiled built-in
due to the fact that there is literally no program that uses no icons at due to the fact that there is literally no program that uses no icons at
all and icons are to be used preferrably in png format. The plugins are all all and icons are to be used preferrably in png format. The plugins are all
located under /usr/lib/tqt3/plugins. This is also the install location you located under /usr/lib/tqt3/plugins. This is also the install location you
should choose as a package maintainer for should choose as a package maintainer for
qt-plugins so the user doesn't have to customize his library path for qt-plugins so the user doesn't have to customize his library path for
loading Qt plugins. The only exception is that KDE delivers a set of Qt loading Qt plugins. The only exception is that KDE delivers a set of Qt
plugins as well (mainly styles and designer plugins); those are placed in plugins as well (mainly styles and designer plugins); those are placed in
/usr/lib/trinity/plugins. /usr/lib/trinity/plugins.
QMotif Extension: As this code is only available in commercial environments QMotif Extension: As this code is only available in commercial environments
(and produces a static library libqmotif.a anyway that those commercial (and produces a static library libqmotif.a anyway that those commercial
applications have to be linked against in addition to Qt), we left out all applications have to be linked against in addition to Qt), we left out all
header files of the libtqt3-headers package that are belonging to this header files of the libtqt3-headers package that are belonging to this
QMotif extension. QMotif extension.
Oracle Database driver, Sybase & Microsoft SQL Server driver: Those drivers Oracle Database driver, Sybase & Microsoft SQL Server driver: Those drivers
are only available in a commercial version of Qt due to license are only available in a commercial version of Qt due to license
incompatibilities with the GPL. If you need to faciliate those drivers, incompatibilities with the GPL. If you need to faciliate those drivers,
please visit http://www.trolltech.com and have a read at please visit http://www.trolltech.com and have a read at
http://doc.trolltech.com/3.0/sql-driver.html. http://doc.trolltech.com/3.0/sql-driver.html.
3. Packages (End-User)
The Qt built has been split up into several packages that allow for easy 3. Packages (End-User)
installation for all types of users. The End-user usually only retquires to
have the following packages installed to run an application that links The Qt built has been split up into several packages that allow for easy
installation for all types of users. The End-user usually only retquires to
have the following packages installed to run an application that links
against Qt: against Qt:
Threaded version:libtqt3-mt (the library libtqt-mt.so.* and libtqui.so.* for Threaded version:libtqt3-mt (the library libtqt-mt.so.* and libtqui.so.* for
loading designer-made user interfaces at runtime). loading designer-made user interfaces at runtime).
Optionally depending on the program's retquirements: Optionally depending on the program's retquirements:
libtqt3-mt-odbc libtqt3-mt-odbc
libtqt3-mt-mysql libtqt3-mt-mysql
libtqt3-mt-psql libtqt3-mt-psql
In addition to the libraries, it may make sense to install the program In addition to the libraries, it may make sense to install the program
qtconfig to customize the look and behaviorof Qt programs. If you have KDE qtconfig to customize the look and behaviorof Qt programs. If you have KDE
installed, the KDE control center will take this task automatically in most installed, the KDE control center will take this task automatically in most
cases. qtconfig is available in the package tqt3-qtconfig. cases. qtconfig is available in the package tqt3-qtconfig.
Also, Qt programs can make use of the online-help tool that ships with Qt, Also, Qt programs can make use of the online-help tool that ships with Qt,
the Qt Assistant. The Assistant can be installed with the package the Qt Assistant. The Assistant can be installed with the package
qt3-assistant. qt3-assistant.
Qt Configuration files Qt Configuration files
@ -104,80 +104,80 @@ assistant as well as qtconfig.
4. Packages (Package maintainers) 4. Packages (Package maintainers)
In addition to the library, a package maintainer will retquire an additional In addition to the library, a package maintainer will retquire an additional
set of packages to compile a package that retquires Qt. Depending on the set of packages to compile a package that retquires Qt. Depending on the
version of the qt library, you will retquire a different set of packages; version of the qt library, you will retquire a different set of packages;
the most common option should be to make your application link against the the most common option should be to make your application link against the
multi-threaded version (-mt).Packages necessary for compiling Qt multi-threaded version (-mt).Packages necessary for compiling Qt
applications from source: applications from source:
libtqt3-mt-dev (use libtqt3-dev for linking against -lqt, this package only libtqt3-mt-dev (use libtqt3-dev for linking against -ltqt, this package only
contains the .so files and the header file for libtqui.so) contains the .so files and the header file for libtqui.so)
libtqt3-headers (header files for libqt and libtqt-mt) libtqt3-headers (header files for libtqt and libtqt-mt)
qt3-dev-tools (this package contains the tools uic and moc as well as tqt3-dev-tools (this package contains the tools tquic and tqmoc as well as
qmake, retquired for building Qt applications) tqmake, required for building TQt applications)
If, however, you encounter an older program not to compile with this set If, however, you encounter an older program not to compile with this set
read the FAQ at the end of this document. read the FAQ at the end of this document.
5. Packages (Developers) 5. Packages (Developers)
In addition to the packages that packagers retquire, a developer usually In addition to the packages that packagers retquire, a developer usually
will retquire the Qt API documentationas well as tools like the assistant, will retquire the Qt API documentationas well as tools like the assistant,
linguist or designer. However, you should be fine with installing the API linguist or designer. However, you should be fine with installing the API
documentation that you can browse with a webbrowser, optionally with the documentation that you can browse with a webbrowser, optionally with the
assistant. They are available in /usr/share/doc/tqt3-doc/html. assistant. They are available in /usr/share/doc/tqt3-doc/html.
For a regular development environment, install tqt3-designer and tqt3-doc. For a regular development environment, install tqt3-designer and tqt3-doc.
For faciliating Qt's extended environment to write plugins for the Qt For faciliating Qt's extended environment to write plugins for the Qt
Designer or extend the Designer as well as utilizing the Qt Assistant by Designer or extend the Designer as well as utilizing the Qt Assistant by
calling it from within your program, install tqt3-apps-dev, which contains calling it from within your program, install tqt3-apps-dev, which contains
the static libraries and header files retquired for this functionality. the static libraries and header files retquired for this functionality.
For developers that work on migrating their program For developers that work on migrating their program
from any Qt version prior to Qt 3.x to the Qt 3.x platform you will find from any Qt version prior to Qt 3.x to the Qt 3.x platform you will find
additional tools in the tqt3-dev-tools-compat. additional tools in the tqt3-dev-tools-compat.
For using the QTranslator class and where to find the qm-file for qt as For using the QTranslator class and where to find the qm-file for qt as
well as where to place your translations,see the next section. well as where to place your translations,see the next section.
If your program doesn't compile with those settings in case you have If your program doesn't compile with those settings in case you have
started your project with Qt 1.x or 2.x, please read the FAQ section at the started your project with Qt 1.x or 2.x, please read the FAQ section at the
end of this document. end of this document.
5. Packages (Translators) 5. Packages (Translators)
In order to translate a Qt program into any other language, the Qt 3 way to In order to translate a Qt program into any other language, the Qt 3 way to
do this is to let the developer create a ts-file containing the strings do this is to let the developer create a ts-file containing the strings
that the program exposes on the user interface. The tools to create the that the program exposes on the user interface. The tools to create the
ts-file and to create the final qm (Q-message binary) file, lupdate and ts-file and to create the final qm (Q-message binary) file, lupdate and
lrelease, are included in tqt3-dev-tools.The single translator that only lrelease, are included in tqt3-dev-tools.The single translator that only
gets provided the ts file and has to return a translated ts file, it gets provided the ts file and has to return a translated ts file, it
is absolutely enough to install tqt3-linguist; the package tqt3-assistant can is absolutely enough to install tqt3-linguist; the package tqt3-assistant can
be installed to access the online-help for the Qt Linguist itself. be installed to access the online-help for the Qt Linguist itself.
In case you're converting an application using Qt prior to Qt 3, you may In case you're converting an application using Qt prior to Qt 3, you may
want to uitilize the tqt3-dev-tools-compat which include the necessary tools want to uitilize the tqt3-dev-tools-compat which include the necessary tools
to convert older qm files to the new ts file standard. to convert older qm files to the new ts file standard.
Locations of message translations: Locations of message translations:
Qt ships with a set of translations for the strings used inside Qt. Those Qt ships with a set of translations for the strings used inside Qt. Those
translations will be installed into /usr/share/tqt3/translations (qm files translations will be installed into /usr/share/tqt3/translations (qm files
only), which equals $QTDIR/translations respectively only), which equals $QTDIR/translations respectively
qInstallPath() + QString( "/translations" ). qInstallPath() + QString( "/translations" ).
The configure option --translationdir has been set to /usr/share/tqt3/translations The configure option --translationdir has been set to /usr/share/tqt3/translations
accordingly since it was introduced in Qt 3.2. accordingly since it was introduced in Qt 3.2.
To correctly enable your program to display the translations to the Qt To correctly enable your program to display the translations to the Qt
library and to load the translation of the program itself, we currently library and to load the translation of the program itself, we currently
suggest to either install your translations along with any other data files suggest to either install your translations along with any other data files
into/usr/share/<appname>/, translation files into the subdirectory into/usr/share/<appname>/, translation files into the subdirectory
translations (that is /usr/share/<appname>/translations) The code that your translations (that is /usr/share/<appname>/translations) The code that your
application should use to load the Qt translation will have to look like application should use to load the Qt translation will have to look like
the following: the following:
int main( int argc, char **argv ) int main( int argc, char **argv )
{ {
@ -185,69 +185,69 @@ int main( int argc, char **argv )
// translation file for Qt // translation file for Qt
QTranslator qt( 0 ); QTranslator qt( 0 );
qt.load( QString( "qt_" ) + QTextCodec::locale(), qInstallPath() + qt.load( QString( "qt_" ) + QTextCodec::locale(), qInstallPath() +
QString( "/translations" ); QString( "/translations" );
app.installTranslator( &qt ); app.installTranslator( &qt );
// translation file for application strings // translation file for application strings
QTranslator myapp( 0 ); QTranslator myapp( 0 );
myapp.load( QString( "myapp_" ) + QTextCodec::locale(), "." ); myapp.load( QString( "myapp_" ) + QTextCodec::locale(), "." );
// use a substitue for $prefix/share/appname/translations here // use a substitue for $prefix/share/appname/translations here
app.installTranslator( &myapp ); app.installTranslator( &myapp );
6. Frequently Asked Questions 6. Frequently Asked Questions
Using Qt for Debian as a developer or packager Using Qt for Debian as a developer or packager
---------------------------------------------- ----------------------------------------------
Q: I want to compile a source package that utilizes qmake to build the Q: I want to compile a source package that utilizes qmake to build the
Makefiles. What do I need to do to makeit work ? Makefiles. What do I need to do to makeit work ?
A: qmake retquires two environment variables to be set, QTDIR and QMAKESPEC. A: qmake retquires two environment variables to be set, QTDIR and QMAKESPEC.
To make it work, do To make it work, do
export QTDIR=/usr/share/tqt3 export QTDIR=/usr/share/tqt3
export QMAKESPEC=linux-g++ export QMAKESPEC=linux-g++
Then run qmake -o Makefile <projectfile>.pro Then run qmake -o Makefile <projectfile>.pro
After that, the Makefile is correctly created to build your application on After that, the Makefile is correctly created to build your application on
Debian. As a packager, export thosetwo variables in the rules file before Debian. As a packager, export thosetwo variables in the rules file before
calling qmake. calling qmake.
Q: I have an application that when linking gives me symbol referencing Q: I have an application that when linking gives me symbol referencing
errors to Q*Style. Why does my applicationnot link correctly ? errors to Q*Style. Why does my applicationnot link correctly ?
A: The author of the program is using the styles that ship with Qt directly A: The author of the program is using the styles that ship with Qt directly
instead of using the QStylePlugin interface.If you are the author of the instead of using the QStylePlugin interface.If you are the author of the
program, change your program to use QStylePlugin. If you are a packager, program, change your program to use QStylePlugin. If you are a packager,
write to theauthor of the program that he is assuming that the styles write to theauthor of the program that he is assuming that the styles
shipped with Qt are built-in to the library which is not the case on Debian shipped with Qt are built-in to the library which is not the case on Debian
and that he please should fix this and use QStylePlugin. and that he please should fix this and use QStylePlugin.
Q: Where are all the examples and tutorials ? And how do I build them ? Q: Where are all the examples and tutorials ? And how do I build them ?
A: Qt ships with examples and tutorials; so does the Linguist and Designer. A: Qt ships with examples and tutorials; so does the Linguist and Designer.
The tutorials and examples are compressed tarballs which you can unpack with The tutorials and examples are compressed tarballs which you can unpack with
tar -zxvf into your home directory. Change into the tqt3-examples directory tar -zxvf into your home directory. Change into the tqt3-examples directory
and run the provided ./build-examples script. All Qt examples and tutorials, and run the provided ./build-examples script. All Qt examples and tutorials,
including those for designer and the linguist, will be compiled. You will including those for designer and the linguist, will be compiled. You will
notice however, that those examples that inherit from style classes which notice however, that those examples that inherit from style classes which
are not built-in into Qt but configured as a plugin will not compile due are not built-in into Qt but configured as a plugin will not compile due
to the fact that they can't link to the Qt library. to the fact that they can't link to the Qt library.
Q: I'm writing a pure Qt application and I want to ship it with a default Q: I'm writing a pure Qt application and I want to ship it with a default
configuration file. Where does that global configuration file go if I make configuration file. Where does that global configuration file go if I make
use of the QSettings class ? use of the QSettings class ?
A: With qt-3.2.0, Trolltech has introduced a configure option to Qt called A: With qt-3.2.0, Trolltech has introduced a configure option to Qt called
--sysconfdir which we intentionally set to /etc/tqt3 similar to /etc/trinity for --sysconfdir which we intentionally set to /etc/tqt3 similar to /etc/trinity for
KDE programs. Install your application's system wide configuration file KDE programs. Install your application's system wide configuration file
to /etc/tqt3. to /etc/tqt3.
Q: I have a question not covered by this FAQ and README file. Who should I Q: I have a question not covered by this FAQ and README file. Who should I
turn to ? turn to ?
A: Please turn to Debian Qt/KDE Maintainers (debian-qt-kde@lists.debian.org) A: Please turn to Debian Qt/KDE Maintainers (debian-qt-kde@lists.debian.org)
for any questions regarding Qt on Debian. for any questions regarding Qt on Debian.
-- Ralf Nolden <nolden@kde.org> Sun, 26 Jan 2003 20:39:19 +0100 -- Ralf Nolden <nolden@kde.org> Sun, 26 Jan 2003 20:39:19 +0100

@ -155,7 +155,7 @@ Depends: ${shlibs:Depends}
Recommends: libtqt3-mt-dev Recommends: libtqt3-mt-dev
Description: TQt3 development tools Description: TQt3 development tools
This package contains all tools that are necessary to build programs This package contains all tools that are necessary to build programs
that are written using TQt3. These are: qmake, uic and moc. that are written using TQt3. These are: tqmake, tquic and tqmoc.
For TQt3 development, you most likely want to install this package. For TQt3 development, you most likely want to install this package.
Package: tqt3-designer Package: tqt3-designer

@ -217,7 +217,7 @@ clean::
fi fi
-rm -rf .qmake.cache src/.qmake.internal.cache tools/designer/designer/.qmake.internal.cache qmake/GNUmakefile \ -rm -rf .qmake.cache src/.qmake.internal.cache tools/designer/designer/.qmake.internal.cache qmake/GNUmakefile \
config.status bin/moc bin/tqmake src/moc/*.o mkspecs/default lib/lib* `pwd`/debian/doc $(TMP_INSTALL) \ config.status bin/tqmoc bin/tqmake src/tqmoc/*.o mkspecs/default lib/lib* `pwd`/debian/doc $(TMP_INSTALL) \
src/tools/qconfig.cpp include/ntqconfig.h include/ntqmodules.h plugins/accessibleqtwidgets.prl \ src/tools/qconfig.cpp include/ntqconfig.h include/ntqmodules.h plugins/accessibleqtwidgets.prl \
config.tests/unix/ipv6/ipv6test config.tests/unix/ipv6/ipv6test.o config.tests/unix/ptrsize/ptrsizetest.o \ config.tests/unix/ipv6/ipv6test config.tests/unix/ipv6/ipv6test.o config.tests/unix/ptrsize/ptrsizetest.o \
config.tests/unix/ptrsize/ptrsizetest config.tests/unix/endian/endiantest.o \ config.tests/unix/ptrsize/ptrsizetest config.tests/unix/endian/endiantest.o \

Loading…
Cancel
Save