summaryrefslogtreecommitdiffstats
path: root/ubuntu/precise/dependencies/tqt3/debian/README.Debian
diff options
context:
space:
mode:
Diffstat (limited to 'ubuntu/precise/dependencies/tqt3/debian/README.Debian')
-rw-r--r--ubuntu/precise/dependencies/tqt3/debian/README.Debian277
1 files changed, 277 insertions, 0 deletions
diff --git a/ubuntu/precise/dependencies/tqt3/debian/README.Debian b/ubuntu/precise/dependencies/tqt3/debian/README.Debian
new file mode 100644
index 000000000..99b460974
--- /dev/null
+++ b/ubuntu/precise/dependencies/tqt3/debian/README.Debian
@@ -0,0 +1,277 @@
+Qt for Debian README
+--------------------
+
+1. Preface
+
+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
+for Debian in case you either want to faciliate it for development
+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
+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
+users; developers, application users, translators of Qt-based
+applications and Debian packagers who are packaging applications developed
+with Qt.2.
+
+2. General Overview
+
+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
+easier for everyone else to handle it and not to retquire
+unnecessary disk space for end-users. Additionally, Qt can be configured
+in several ways - and therefore also used in several ways. Qt development
+usually retquires the environment variable QTDIR. As Debian is placing
+libraries and header files in a tquite specific filesystem order, this
+usually breaks setting a single environment variable to meet the
+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
+Qt (so the QTDIR path) is available in /usr/share/tqt3. If you need to set
+QTDIR, do export QTDIR=/usr/share/tqt3
+
+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
+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
+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).
+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
+configuration generally is intended to provide a Qt version that is as
+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
+way. This includes:
+
+- imageformats: jpeg and mng - codecs (for languages like arab, japanese
+ etc provided with Qt)
+- sql drivers for databases (MySQL, ODBC and PostgreSQL)
+
+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
+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
+should choose as a package maintainer 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
+plugins as well (mainly styles and designer plugins); those are placed in
+/usr/lib/trinity/plugins.
+
+QMotif Extension: As this code is only available in commercial environments
+(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
+header files of the libtqt3-headers package that are belonging to this
+QMotif extension.
+
+Oracle Database driver, Sybase & Microsoft SQL Server driver: Those drivers
+are only available in a commercial version of Qt due to license
+incompatibilities with the GPL. If you need to faciliate those drivers,
+please visit http://www.trolltech.com and have a read at
+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
+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:
+
+Threaded version:libtqt3-mt (the library libtqt-mt.so.* and libtqui.so.* for
+loading designer-made user interfaces at runtime).
+
+Optionally depending on the program's retquirements:
+
+libtqt3-mt-odbc
+libtqt3-mt-mysql
+libtqt3-mt-psql
+
+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
+installed, the KDE control center will take this task automatically in most
+cases. qtconfig is available in the package tqt3-qtconfig.
+
+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
+qt3-assistant.
+
+Qt Configuration files
+----------------------
+Qt programs most often use QSettings to store their information in configuration
+files. With Qt 3.2, the new option --sysconfdir has been introduced that allows
+us to use /etc/tqt3 as the system-wide location where qt-program specific global
+configuration files can go. If you're a programmer that wants to get familiar with
+that, please look at the examples, documentation and the code in designer or
+assistant as well as qtconfig.
+
+4. Packages (Package maintainers)
+
+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
+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
+multi-threaded version (-mt).Packages necessary for compiling Qt
+applications from source:
+
+libtqt3-mt-dev (use libtqt3-dev for linking against -lqt, this package only
+ contains the .so files and the header file for libtqui.so)
+
+libtqt3-headers (header files for libqt and libtqt-mt)
+
+qt3-dev-tools (this package contains the tools uic and moc as well as
+qmake, retquired for building Qt applications)
+
+If, however, you encounter an older program not to compile with this set
+read the FAQ at the end of this document.
+
+5. Packages (Developers)
+
+In addition to the packages that packagers retquire, a developer usually
+will retquire the Qt API documentationas well as tools like the assistant,
+linguist or designer. However, you should be fine with installing the API
+documentation that you can browse with a webbrowser, optionally with the
+assistant. They are available in /usr/share/doc/tqt3-doc/html.
+For a regular development environment, install tqt3-designer and tqt3-doc.
+
+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
+calling it from within your program, install tqt3-apps-dev, which contains
+the static libraries and header files retquired for this functionality.
+
+For Embedded Developers, the program qvfb (Qt Virtual Frambuffer) and
+makeqpf (embedded fonts tool)have been packaged into
+qt3-dev-tools-embedded. 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
+additional tools in the tqt3-dev-tools-compat.
+
+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.
+
+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
+end of this document.
+
+5. Packages (Translators)
+
+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
+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
+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
+is absolutely enough to install tqt3-linguist; the package tqt3-assistant can
+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
+want to uitilize the tqt3-dev-tools-compat which include the necessary tools
+to convert older qm files to the new ts file standard.
+
+Locations of message translations:
+
+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
+only), which equals $QTDIR/translations respectively
+qInstallPath() + QString( "/translations" ).
+
+The configure option --translationdir has been set to /usr/share/tqt3/translations
+accordingly since it was introduced in Qt 3.2.
+
+To correctly enable your program to display the translations to the Qt
+library and to load the translation of the program itself, we currently
+suggest to either install your translations along with any other data files
+into/usr/share/<appname>/, translation files into the subdirectory
+translations (that is /usr/share/<appname>/translations) The code that your
+application should use to load the Qt translation will have to look like
+the following:
+
+int main( int argc, char **argv )
+ {
+ QApplication app( argc, argv );
+
+ // translation file for Qt
+ QTranslator qt( 0 );
+ qt.load( QString( "qt_" ) + QTextCodec::locale(), qInstallPath() +
+ QString( "/translations" );
+ app.installTranslator( &qt );
+
+ // translation file for application strings
+ QTranslator myapp( 0 );
+ myapp.load( QString( "myapp_" ) + QTextCodec::locale(), "." );
+ // use a substitue for $prefix/share/appname/translations here
+ app.installTranslator( &myapp );
+
+6. Frequently Asked Questions
+
+Using Qt for Debian as a developer or packager
+----------------------------------------------
+
+Q: I want to compile a source package that utilizes qmake to build the
+Makefiles. What do I need to do to makeit work ?
+
+A: qmake retquires two environment variables to be set, QTDIR and QMAKESPEC.
+To make it work, do
+export QTDIR=/usr/share/tqt3
+export QMAKESPEC=linux-g++
+
+Then run qmake -o Makefile <projectfile>.pro
+
+After that, the Makefile is correctly created to build your application on
+Debian. As a packager, export thosetwo variables in the rules file before
+calling qmake.
+
+Q: I have an application that when linking gives me symbol referencing
+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
+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,
+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
+and that he please should fix this and use QStylePlugin.
+
+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.
+The tutorials and examples are compressed tarballs which you can unpack with
+tar -zxvf into your home directory. Change into the tqt3-examples directory
+and run the provided ./build-examples script. All Qt examples and tutorials,
+including those for designer and the linguist, will be compiled. You will
+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
+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
+configuration file. Where does that global configuration file go if I make
+use of the QSettings class ?
+
+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
+KDE programs. Install your application's system wide configuration file
+to /etc/tqt3.
+
+Q: I'm compiling a program and I have a compile error due to a missing
+include. Why isn't that include not present in the Debian packages anymore
+? It compiled with older versions of Debian packages of Qt !
+
+A: This may be due to two reasons: either the package still uses the old
+includes from Qt 1.x or 2.x that got basically renamed by Trolltech due to
+the naming convention. The filenames are now all following the scheme
+
+ClassName -> classname.h.
+
+Therefore, if you are the developer of the affected program, change your
+sources according to this scheme. Qt ships with two tools, qt20fix and
+qtrename140, to help developers migrate their API to the Qt 3 version,
+which can help you in the transition upgrade to Qt 3.
+
+If you are affected by this as a packager, notify upstream to fix those
+problems and in the meanwhile use libtqt3-compat-headers as a build
+dependency which includes the compatibility headers that just include the
+right files from the new API again.
+
+Q: I have a question not covered by this FAQ and README file. Who should I
+turn to ?
+
+A: Please turn to Debian Qt/KDE Maintainers (debian-qt-kde@lists.debian.org)
+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> Mon, 1 Sep 2003 19:24:16 +0200
+ -- Modestas Vainius <modestas@vainius.eu> Fri, 22 Feb 2008 01:40:06 +0200