From 68f32a3e4f447f86cad7f1fddbd566227a7bd00d Mon Sep 17 00:00:00 2001 From: Casper van Donderen Date: Thu, 10 Nov 2011 10:59:15 +0100 Subject: Update supported platforms and remove commercial page. The supported platforms page conatined a lot of platforms that are untested for Qt 4.8, so those are removed. The platform notes had not been updated since 2009 and were therefore severely outdated. Nokia does not provide a commercial edition of Qt anymore. A user can find the link to purchasing Qt through the Qt Developer Network at http://developer.qt.nokia.com --- doc/src/development/developing-with-qt.qdoc | 42 +- doc/src/legal/commercialeditions.qdoc | 82 --- doc/src/platforms/compiler-notes.qdoc | 44 -- doc/src/platforms/platform-notes-rtos.qdoc | 368 ---------- doc/src/platforms/platform-notes.qdoc | 1000 --------------------------- doc/src/platforms/platform-notes.qdocinc | 0 doc/src/platforms/supported-platforms.qdoc | 413 +---------- doc/src/qt-webpages.qdoc | 4 - 8 files changed, 36 insertions(+), 1917 deletions(-) delete mode 100644 doc/src/legal/commercialeditions.qdoc delete mode 100644 doc/src/platforms/compiler-notes.qdoc delete mode 100644 doc/src/platforms/platform-notes-rtos.qdoc delete mode 100644 doc/src/platforms/platform-notes.qdoc delete mode 100644 doc/src/platforms/platform-notes.qdocinc diff --git a/doc/src/development/developing-with-qt.qdoc b/doc/src/development/developing-with-qt.qdoc index 59aae83..2f56151 100644 --- a/doc/src/development/developing-with-qt.qdoc +++ b/doc/src/development/developing-with-qt.qdoc @@ -75,39 +75,37 @@ \table \row - \o - \list \o \l {Calling Qt Functions From Unix Signal Handlers} - \o \l {Compiler Notes} + \o Workaround for using Unix signal handlers. + \row \o \l {Developing Qt Applications for Mac OS X} - \o \l {Known Issues} - \o \l {Platform and Compiler Notes} - \o \l {Platform and Compiler Notes - Symbian} - \o \l {ActiveX in Qt} - \o \l {Qt for Embedded Linux Classes} - \o \l {Qt for Embedded Platforms} - \o \l {Qt for Mac OS X - Specific Issues} - \o \l {Qt is Mac OS X Native} - \o \l {Supported Platforms} - \o \l {The qtmain Library} - \o \l {Window System Specific Notes} - \endlist - \o - \list - \o Workaround to make it work. - \o Information about the C++ compilers and tools used to build Qt. \o Information for developing Qt applications for Mac OS X + \row + \o \l {Known Issues} \o A summary of known issues in this Qt version at the time of release. - \o Information about the platforms on which Qt can be used. - \o Information about the state of support for the Symbian platform. + \row + \o \l {ActiveX in Qt} \o Qt API's for using ActiveX controls, servers, and COM. + \row + \o \l {Qt for Embedded Linux Classes} \o Classes that are specific to Qt for Embedded Linux. + \row + \o \l {Qt for Embedded Platforms} \o Documents related to Qt for Embedded Platforms. + \row + \o \l {Qt for Mac OS X - Specific Issues} \o A description of issues with Qt that are specific to Mac OS X. + \row + \o \l {Qt is Mac OS X Native} \o An explanation of Qt's native features on Mac OS X. + \row + \o \l {Supported Platforms} \o The platforms supported by Nokia for Qt. + \row + \o \l {The qtmain Library} \o Describes the use and license of the qtmain helper library. + \row + \o \l {Window System Specific Notes} \o Collections of notes about Qt implementations on different window systems. - \endlist \endtable */ diff --git a/doc/src/legal/commercialeditions.qdoc b/doc/src/legal/commercialeditions.qdoc deleted file mode 100644 index 9d7ac6b..0000000 --- a/doc/src/legal/commercialeditions.qdoc +++ /dev/null @@ -1,82 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:FDL$ -** GNU Free Documentation License -** Alternatively, this file may be used under the terms of the GNU Free -** Documentation License version 1.3 as published by the Free Software -** Foundation and appearing in the file included in the packaging of -** this file. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms -** and conditions contained in a signed written agreement between you -** and Nokia. -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -/*! - \page commercialedition.html - \title Qt Commercial Edition - \ingroup licensing - \brief Information about the license and features of the Commercial Edition. - - Qt can be used to develop closed source software if you obtain a commercial - license. - - If you want to develop Free or Open Source software for release using a recognized - Open Source license, you can use the \l{Open Source Versions of Qt}. - - The following table is a summary of the licenses under which Qt is made available. - - \table - \row \o \bold{Qt Commercial Developer License} - \o The Qt Commercial Developer License is the appropriate version to use for the - development of proprietary and/or commercial software where the developer does not - wish to share or distribute any source code of the Qt libraries or otherwise comply - with the terms of the \l{GNU Lesser General Public License (LGPL)}{GNU Lesser General - Public License version 2.1} or \l{GNU General Public License (GPL)}{GNU GPL version - 3.0}. - \row \o \bold{Qt GNU LGPL v. 2.1} - \o This version of Qt is appropriate for the development of Qt applications - (proprietary or open source) provided you can comply with the terms and conditions - contained in the \l{GNU Lesser General Public License (LGPL)}{GNU LGPL version 2.1}. - \row \o \bold{Qt GNU GPL v. 3.0} - \o This version of Qt is appropriate for the development of Qt applications where - you wish to use such applications in combination with software subject to the terms - of the GNU General Public License version 3.0 or where you are otherwise willing to - comply with the terms of the - \l{GNU General Public License (GPL)}{GNU General Public License version 3.0}. - \endtable - - Please see the \l{Supported Platforms}{list of supported - platforms} for up-to-date information about the various platforms - and compilers that Qt supports. - - On the Qt Web site, you can find a - \l{Qt Licensing Overview} and information on \l{Qt License Pricing} - for commercial editions of Qt and other Qt-related products. - - \section1 Purchasing and Sales Information - - To purchase, please visit the \l{How to Order}{online order form}. - - For further information and assistance, please contact the Qt sales team - via one of the following channels: - - \table - \row \o Web: \o \bold{http://qt.nokia.com/contact} - \row \o Phone, U.S. office (for sales in North America): \o \bold{1-408-220-9020} - \row \o Phone, Norway office (for sales in the rest of the world): \o \bold{+47 21 60 48 00} - \endtable -*/ diff --git a/doc/src/platforms/compiler-notes.qdoc b/doc/src/platforms/compiler-notes.qdoc deleted file mode 100644 index be149a9..0000000 --- a/doc/src/platforms/compiler-notes.qdoc +++ /dev/null @@ -1,44 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:FDL$ -** GNU Free Documentation License -** Alternatively, this file may be used under the terms of the GNU Free -** Documentation License version 1.3 as published by the Free Software -** Foundation and appearing in the file included in the packaging of -** this file. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms -** and conditions contained in a signed written agreement between you -** and Nokia. -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -/*! - \page compiler-notes.html - \ingroup platform-specific - \title Compiler Notes - \brief Information about the C++ compilers and tools used to build Qt. - - This page used to contain information about the C++ compilers and tools - used to build Qt on various platforms. This information is now maintained - in the \l{Platform and Compiler Notes} for each platform. - - Please refer to the \l{Supported Platforms} page for information about the - status of each platform. - - If you have anything to add to this list or any of the platform or - compiler-specific pages, please submit it via the \l{Bug Report Form} - or through the \l{Public Qt Repository}. -*/ diff --git a/doc/src/platforms/platform-notes-rtos.qdoc b/doc/src/platforms/platform-notes-rtos.qdoc deleted file mode 100644 index dd72016..0000000 --- a/doc/src/platforms/platform-notes-rtos.qdoc +++ /dev/null @@ -1,368 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:FDL$ -** GNU Free Documentation License -** Alternatively, this file may be used under the terms of the GNU Free -** Documentation License version 1.3 as published by the Free Software -** Foundation and appearing in the file included in the packaging of -** this file. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms -** and conditions contained in a signed written agreement between you -** and Nokia. -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -/*! - \page platform-notes-vxworks.html - \title Platform and Compiler Notes - VxWorks - \contentspage Platform and Compiler Notes - \target VxWorks - - \note VxWorks is a community supported platform. See the - \l{Supported Platforms} page for more information. - - This page contains information about the Qt for VxWorks port. More - information about the combinations of platforms and compilers supported - by Qt can be found on the \l{Supported Platforms} page. - - \tableofcontents - - \section1 Supported Versions - - Qt has been tested on WindRiver VxWorks 6.7 in kernel mode using the - vendor supplied GCC compiler, targetting both the x86 simulator - (simpentium) and Power-PC devices (ppc). - VxWorks' RTP mode is currently not supported. - - \section1 Limitations - - The VxWorks kernel has an optional POSIX compatibility layer, but this - layer does not implement all POSIX functionality needed for a complete - Qt port. - - \table - \header \o Function \o Notes - \row \o QProcess - \o Not available - VxWorks has no concept of processes. - \row \o QSharedMemory - \o Not available - VxWorks has only a global, flat address space. - \row \o QSystemSemaphore - \o Not available - VxWorks has no concept of processes. - \row \o QLibrary - \o QLibrary is only a small stub to make it possible to build - static plugins. - \row \o QCoreApplication - \o Can only be instantiated once. Qt's Q(CoreE)Application is - tightly coupled to one address space and process, while VxWorks - only supports one global address space and has no concept of - processes. - \row \o Phonon - \o There is no standard audio backend, which could be integrated into Phonon. - \row \o Qt3Support - \o The Qt3Support library is not available on VxWorks. - - \endtable - - \section1 Build Instructions - - Qt for VxWorks needs to be \l{Cross-Compiling Qt for Embedded Linux - Applications}{cross-compiled} on a Linux host. \c configure and \c make - the build like you would with a standard \l{Cross-Compiling Qt for - Embedded Linux Applications}{embedded Linux cross build}. Building the - VxWorks simulator would be done like this: - - \code - /configure -xplatform unsupported/vxworks-simpentium-g++ -embedded vxworks -exceptions -no-gfx-linuxfb -no-mouse-linuxtp -no-mouse-pc -no-kbd-tty - make - \endcode - - \list - \o \c{-xplatform unsupported/qws/vxworks-simpentium-g++} - selects the x86 simulator mkspec for VxWorks - \o \c{-embedded vxworks} - builds the embedded version of Qt and sets the architecture to VxWorks - \o \c{-exceptions} - see General Notes below - \o \c{-no-gfx-linuxfb}, \c{-no-mouse-linuxtp}, \c{-no-mouse-pc} and \c{-no-kbd-tty} are Linux specific and won't work on VxWorks - \endlist - - \section1 General Notes - - \list - - \o Configuring with \c{-exceptions} is necessary, because the VxWorks - 6.7 g++ headers require exceptions to be enabled when compiling C++ - code. - - \o Configure's \c{-xplatform} can be any of - \c{unsupported/vxworks-(simpentium|ppc)-(g++|dcc)}, but \c{dcc} - (WindRiver DIAB compiler) has not yet tested been tested with Qt 4.6 and - VxWorks 6.7. - - \o Building shared libraries with \c{-shared} (the default) doesn't - really build shared libraries, like e.g. on Linux, since these are not - supported by VxWorks. Instead, qmake will created partially linked - objects, that can be loaded at runtime with \c{ld}. - - \o Creating static builds with \c{-static} is fully supported. - - \o "Munching" (generating constructors/destructors for static C++ - objects) is done automatically by a special qmake extension (for both - shared libraries and executables) - - \o VxWorks does not have a file system layer, but the low level storage - drivers have to supply a file system like interface to the applications. - Since each driver implements a different subset of the functionality - supported by this interface, Qt's file system auto-tests show wildly - differing results running on different "file systems". The best results - can be achieved when running on a (writable) NFS mount, since that - provides the most Unix-ish interface. The worst results come from the - FTP file system driver, which may crash when accessed by a - \c{QFileInfo}. - - \o Keep in mind that VxWorks doesn't call your \c{main()} function with - the standard \c{argc}/\c{argv} parameters. So either add a special - \c{vxmain()} function or use a tool like \c{callmain} to translate - VxWorks' commandline arguments to an \c{argc}/\c{argv} array. - - \o Some example will fail to build, due to some missing dependencies - (e.g. shared memory) - this will be fixed in a later release. - - \endlist -*/ - -/*! - \page platform-notes-qnx.html - \title Platform and Compiler Notes - QNX - \contentspage Platform and Compiler Notes - \target QNX - - \note QNX is a community supported platform. See the - \l{Supported Platforms} page for more information. - - This page contains information about the Qt for QNX port. More - information about the combinations of platforms and compilers supported - by Qt can be found on the \l{Supported Platforms} page. - - Note that Qt for QNX is currently based on \l{Qt for Embedded Linux}, which - contains its own windowing system. Mixing QNX's Photon environment with - Qt for QNX is currently not possible. Building Qt for QNX with Photon's - X11 embedded server is not recommended due to missing support for X11 extensions, - resulting in poor rendering quality. - - Qt for QNX contains screen and input drivers based on QNX's - \c devi-hid and \c io-display. For more information, check the class documentation - for QQnxScreen, QWSQnxKeyboardHandler and QQnxMouseHandler. See the - \l{Porting Qt for Embedded Linux to a New Architecture} document for information - on how to add custom screen or input drivers. - - \tableofcontents - - \section1 Supported Versions - - Qt has been tested on QNX 6.5 on i386, ARM/ARM-v7 and PowerPC targets with QNX's default - gcc compiler. - - \section1 Limitations - - Some of Qt's functionality is currently not available on QNX: - - \table - \header \o Function \o Notes - \row \o Phonon - \o There is no standard audio backend, which could be integrated into Phonon. - \row \o QtMultimedia - \o There is no standard backend, which could be integrated into QtMultimedia. - \row \o QtDBus - \o The the QtDBus library is not available on QNX. - \row \o Qt3Support - \o The Qt3Support library is not available on QNX. - \endtable - - \section1 Build Instructions - - Qt for QNX needs to be built either on a QNX system, or \l{Cross-Compiling Qt - for Embedded Linux Applications}{cross-compiled} on a Linux host. In either - case, The QNX Software Development Platform must be installed. - - Example configure line for cross-compiling Qt for QNX on a Linux host for an - i386 QNX target: - - \code - configure -xplatform unsupported/qws/qnx-i386-g++ -embedded x86 -no-gfx-linuxfb -no-mouse-linuxtp -no-kbd-tty -no-qt3support -qt-mouse-qnx -qt-kbd-qnx -qt-gfx-qnx -depths 16,24,32,generic -no-exceptions - \endcode - - \list - \o \c{-xplatform unsupported/qws/qnx-i386-g++} - selects the i386-g++ mkspec for QNX - \o \c{-embedded x86} - builds the embedded version of Qt and sets the architecture to i386 - \o \c{-no-gfx-linuxfb}, \c{-no-mouse-linuxtp} and \c{-no-kbd-tty} are Linux specific and won't work on QNX - \o \c{-no-qt3support} - required since the Qt3 support classes are not supported on QNX - \o \c{-no-exceptions} - reduces the size of the library by disabling exception support - \o \c{-qt-mouse-qnx} - enables the \c{devi-hid} based mouse driver - \o \c{-qt-kbd-qnx} - enables the \c{devi-hid} based keyboard driver - \o \c{-qt-gfx-qnx} - enables the \c{io-graphics} based screen driver - \o \c{-depths 16,24,32,generic} - enables all modes supported by the QNX screen driver - \endlist - - \section1 General Notes - - \list - \o To enable the QNX screen and input drivers, \c{io-display} needs to be - up and running. The \c devi-hid based Qt input drivers require \c devi-hid to run - in resource mode without Photon support. To enable a standard mouse and keyboard - combination, run \c devi-hid as follows: \c{/usr/photon/bin/devi-hid -Pr kbd mouse}. - Note that your current shell will not accept keyboard and mouse input anymore after - running that command, so run it either from a script that launches a Qt application - afterwards, or make sure to have remote login available to launch a Qt application. - In addition, the \c QWS_DISPLAY, \c QWS_MOUSE_PROTO and \c QWS_KEYBOARD environment - variables should all be set to \c{qnx} before running a Qt application. - - \o The 3rd party TIFF library currently doesn't build due to the missing \c inflateSync - symbol from QNX's \c{libz.so.2}. Workarounds would be to manually replace QNX's libz - with a newer version, or disable the TIFF plugin entierly by appending - \c{QT_CONFIG += no-tiff} to \c{.qmake.cache} after configuring Qt. - - \o Some of the tools, examples and demos do not compile due to dependencies on classes - that are not available on QNX. - \endlist - - \section1 Platform Regressions - - Qt for QNX's behavior is mostly identical with \l{Qt for Embedded Linux}. However, - some regressions were spotted in QDateTime computation around year 0 and year 1970, - which have been tracked back to faulty time zone data on some QNX versions. - - QString::localeAwareCompare() only works for C locale. - - QTranslator's default locale-based fallback mechanism doesn't work. - - QSystemSemaphore: Due to POSIX semaphores limitations, the semaphore operations aren't - automatically undone when the process terminates. This potentially may lead to unexpected - lock-ups in applications which does use the SysV semaphores behavior. -*/ - -/*! - \page platform-notes-integrity.html - \title Platform Notes - INTEGRITY - \contentspage Platform Notes - \target INTEGRITY - - \note INTEGRITY is a community supported platform. See the - \l{Supported Platforms} page for more information. - - This page contains information about the Qt for INTEGRITY port. More - information about the combinations of platforms and compilers supported - by Qt can be found on the \l{Supported Platforms} page. - - Note that Qt for INTEGRITY is currently based on \l{Qt for Embedded Linux}, - which contains its own windowing system. - - Qt for INTEGRITY contains experimental screen and input drivers based on the - gh_FB Framebuffer API for graphics, a Connection-based mouse and keyboard - support. For information about these drivers, please refer to Green Hills - Software standard support. - - \tableofcontents - - \section1 Supported Versions - - Qt has been tested on INTEGRITY 10 on various PowerPC, ARM and x86 targets. - On some platforms a native graphics FrameBuffer driver is available and has - then been used for testing. On all other platforms, the default FrameBuffer - VNC driver is used. - - \section1 Limitations - - Some of Qt's functionality is currently not available on INTEGRITY: - - \table - \header \o Function \o Notes - \row \o QProcess - \o Not implemented. Volunteers welcome. - \row \o QSharedMemory - \o Not available - INTEGRITY doesn't support SYSV style shared memory. - \row \o QSystemSemaphore - \o Not available - INTEGRITY doesn't support SYSV style system semaphores. - \row \o QWS Multi Process - \o QT_NO_QWS_MULTIPROCESS is always on due to missing shared memory support. - \row \o Phonon - \o There is no standard audio backend. - \row \o Qt3Support - \o The Qt3Support library is not available on INTEGRITY. - \row \o QtScript - \o Not available - INTEGRITY's mmap() doesn't support allocating memory. - \endtable - - \section1 Build Instructions - - Qt for INTEGRITY can be built on either a Linux or Windows (with cygwin) host. - In both cases, a standard installation of INTEGRITY is required, with the - addition of the FrameBuffer API. - - Example configure line for cross-compiling Qt for INTEGRITY for an - ARM INTEGRITY target: - - \code - ./configure --hostprefix=$PWD -embedded integrity -xplatform unsupported/qws/integrity-arm-cxarm -static -qt-kbd-integrity -qt-mouse-integrity -no-mouse-linuxtp -no-mouse-pc -no-kbd-tty -qt-gfx-integrityfb -no-qt3support -no-gfx-linuxfb -no-glib -no-openssl -no-largefile -little-endian -arch integrity -prefix / -opensource -no-feature-QWS_MULTIPROCESS -no-feature-SHAREDMEMORY -no-feature-PROCESS -no-feature-SYSTEMSEMAPHORE -no-feature-PRINTER -no-feature-QWS_QPF2 -no-libtiff -no-exceptions -no-scripttools - \endcode - - \list - \o \c{--hostprefix=$PWD} - specifies the current directory as the base source for Qt - \o \c{-arch integrity} - sets the architecture to INTEGRITY (for atomic operations) - \o \c{-embedded integrity} - builds the embedded version of Qt and sets the architecture to INTEGRITY - \o \c{-xplatform unsupported/qws/integrity-arm-cxarm} - selects the arm-cxarm mkspec for INTEGRITY - \o \c{-static} - specifies a static build of Qt - \o \c{-no-gfx-linuxfb}, \c{-no-mouse-linuxtp}, \c{-no-mouse-pc} and \c{-no-kbd-tty} are Linux specific and won't work on INTEGRITY - \o \c{-no-qt3support} - required since the Qt3 support classes are not supported on INTEGRITY - \o \c{-no-exceptions} - reduces the size of the library by disabling exception support - \o \c{-no-openssl} - disable support for OpenSSL - \o \c(-no-libtiff} - disable support for libTIFF - \o \c{-no-glib} - disable support for unavailable Glib - \o \c{-no-largefile} - disable support for large (> 2TB) files - \o \c{-no-scripttools} - disable support for QtScript tools - \o \c{-qt-gfx-integrity} - enables the experimental gh_FB based display driver - \o \c{-qt-mouse-integrity} - enables the experimental Connection-based mouse driver - \o \c{-qt-kbd-integrity} - enables the experimental Connection-based keyboard driver - \endlist - - The above script will generate MULTI .gpj Project files, not Makefiles. The - main benefit of using these project files is automatic dependency checking, - but this also provides an organization known to INTEGRITY customers. - For Qt libraries, the top-level file is projects.gpj. - - \section1 General Notes - - \list - \o Before you run the above configure line, you may want to modify the values - of INTEGRITY_DIR and INTEGRITY_BSP in unsupported/qws/integrity-arm-cxarm/qmake.conf. - If you do not do this, you will have to modify the resulting generated projects.gpj - - \o Compilation of native preprocessing tools (moc, rcc, uic) is not automatic. From - a Linux shell or a MingWin shell, you can run the following command to compile these tools : - \code - cd src/tools/bootstrap && make && cd ../rcc && make && cd ../moc && make && cd ../uic && make && cd ../../.. - \endcode - - \o GIF and TIFF support are currently not enabled. - - \o Default .int files are generated. You may want to modify the amount of heap assigned - to each example by modifying the HeapSize declaration in the specific example .int file. - - \o Some of the tools, examples and demos do not compile due to dependencies on QProcess - or other classes that are not available on INTEGRITY. - - \endlist - - \section1 Platform Regressions - -*/ diff --git a/doc/src/platforms/platform-notes.qdoc b/doc/src/platforms/platform-notes.qdoc deleted file mode 100644 index f177cd7..0000000 --- a/doc/src/platforms/platform-notes.qdoc +++ /dev/null @@ -1,1000 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:FDL$ -** GNU Free Documentation License -** Alternatively, this file may be used under the terms of the GNU Free -** Documentation License version 1.3 as published by the Free Software -** Foundation and appearing in the file included in the packaging of -** this file. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms -** and conditions contained in a signed written agreement between you -** and Nokia. -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -/*! - \group platform-specific - \title Platform-Specific Documentation - \brief Documents describing platform-specific features of Qt. - - These documents describe platform-specific features provided by Qt, and - discuss issues related to particular platforms and environments. - - \generatelist{related} -*/ - -/*! - \page platform-notes.html - \ingroup platform-specific - \title Platform and Compiler Notes - \brief Information about the platforms on which Qt can be used. - - This page contains information about the platforms Qt is currently known - to run on, with links to platform-specific notes, including any known bugs - or incompatibilities. - - Information about the combinations of platforms and compilers - supported by Qt can be found on the \l{Supported Platforms} page. - - \list - \o \l{Platform and Compiler Notes - X11} - \tableofcontents{1 Platform and Compiler Notes - X11} - \o \l{Platform and Compiler Notes - Windows} - \tableofcontents{1 Platform and Compiler Notes - Windows} - \o \l{Platform and Compiler Notes - Mac OS X} - \tableofcontents{1 Platform and Compiler Notes - Mac OS X} - \o \l{Platform and Compiler Notes - Symbian} - \tableofcontents{1 Platform and Compiler Notes - Symbian} - \o \l{Platform and Compiler Notes - Embedded Linux} - \tableofcontents{1 Platform and Compiler Notes - Embedded Linux} - \o \l{Platform and Compiler Notes - Windows CE} - \tableofcontents{1 Platform and Compiler Notes - Windows CE} - \o \l{Platform and Compiler Notes - QNX} - \tableofcontents{1 Platform and Compiler Notes - QNX} - \o \l{Platform and Compiler Notes - VxWorks} - \tableofcontents{1 Platform and Compiler Notes - VxWorks} - \endlist - - \section1 General Compiler Notes - - \section2 Supported Features - - Not all compilers used to build Qt are able to compile all modules. The following table - shows the compiler support for five modules that are not uniformly available for all - platforms and compilers. - - \table - \header \o Compiler \o{5,1} Features - \header \o \o Concurrent \o XmlPatterns \o WebKit(*) \o CLucene \o Phonon - \row \o g++ 3.3 \o \o \bold{X} \o \o \bold{X} \o \bold{X} - \row \o g++ 3.4 and up \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X} - \row \o SunCC 5.5 \o \o \o \o \bold{X} \o \bold{X} - \row \o aCC series 3 \o \o \o \o \bold{X} \o \bold{X} - \row \o aCC series 6 \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X} - \row \o xlC 6 \o \o \o \o \bold{X} \o \bold{X} - \row \o Intel CC 10 \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X} - \row \o MSVC 2003 \o \bold{X} \o \bold{X} \o \o \bold{X} \o \bold{X} - \row \o MSVC 2005 and up \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X} \o \bold{X} - \endtable - - * WebKit is only supported as a dynamically built library. Static linkage is not supported. - - \section2 GCC 3.4.6 (Debian 3.4.6-5) on AMD64 (x86_64) - - This compiler is known to miscompile some parts of Qt when doing a - release build. There are several workarounds: - - \list 1 - \o Use a debug build instead. - \o For each miscompilation encountered, recompile the file, removing the \c{-O2} option. - \o Add \c{-fno-gcse} to the - \l{qmake Variable Reference#QMAKE_CXXFLAGS_RELEASE}{QMAKE_CXXFLAGS_RELEASE} qmake - variable. - \endlist - - \section2 GCC 4.0.0 - - The released package of the compiler has some bugs that lead to - miscompilations. We recommend using GCC 4.0.1 or later, or to use - a recent CVS snapshot of the GCC 4.0 branch. The version of GCC - 4.0.0 that is shipped with Mac OS X 10.4 "Tiger" is known to work - with Qt for Mac OS X. - - \section2 Intel C++ Compiler - - Qt supports the Intel C++ compiler on both Windows and Linux. - However, there are a few issues on Linux; see - \l{Platform and Compiler Notes - X11#Intel C++ Compiler for Linux}{Intel C++ Compiler for Linux} - for details. - - \section1 Feedback and Corrections - - If you have anything to add to this list or any of the platform or - compiler-specific pages, please submit it via the \l{Bug Report Form} - or through the \l{Public Qt Repository}. -*/ - -/*! - \page platform-notes-x11.html - \title Platform and Compiler Notes - X11 - \contentspage Platform and Compiler Notes - - This page contains information about the X11 platforms Qt is currently - known to run on, with links to platform-specific notes. More information - about the combinations of platforms and compilers supported by Qt can be - found on the \l{Supported Platforms} page. - - \tableofcontents - - \target AIX - \section1 AIX - 5.2 - - Qt has been tested on AIX 5.2, using the xlC compiler. - - \table - \header \o Compiler \o Notes - \row \o xlC - \o If Qt is built correctly but all symbols are reported to be missing - when you link an application, your makeC++SharedLib script might be out - of date. Make sure you have the latest version from the - \l{http://www-306.ibm.com/software/awdtools/vacpp/support/}{IBM website}. - \row \o GCC - \o We have tested earlier versions of Qt 4 successfully with GCC version - 3.3 and above. Some versions of GCC may fail to link Qt with a "TOC overflow" - message. - Fix this by upgrading to the latest maintenance release of the dynamic - linker. On AIX this is bos.rte.bind_cmds.4.1.5.3 or later. - Some versions of GCC may fail to build Qt with STL and large-file support - enabled, due to - \l{http://gcc.gnu.org/bugzilla/show_bug.cgi?id=9551}{a bug in GCC}. - Fix this by upgrading to the latest maintenance release of the compiler. - It is also possible to work around this problem by running configure with - either \c{-no-stl} or \c{-no-largefile}. - \endtable - - \section2 IBM xlC - - The makeC++SharedLib utility must be in your PATH and be up to date to - build shared libraries. From IBM's - \l{http://www.redbooks.ibm.com/abstracts/sg245674.html}{C and C++ Application Development on AIX} - Redbook: - - \list - \o "The second step is to use the makeC++SharedLib command to create the - shared object. The command has many optional arguments, but in its - simplest form, can be used as follows:" - \snippet doc/src/snippets/code/doc_src_compiler-notes.qdoc 1 - \o "The full path name to the command is not required; however, to avoid - this, you will have to add the directory in which it is located to - your PATH environment variable. The command is located in the - /usr/vacpp/bin directory with the VisualAge C++ Professional for AIX, - Version 5 compiler." - \endlist - - \section2 VisualAge C++ for AIX, Version 6.0 - - Make sure you have the - \l{http://www-1.ibm.com/support/search.wss?rs=32&tc=SSEP5D&dc=D400}{latest upgrades} - installed. - - \target FreeBSD - \section1 FreeBSD - 6.0-RELEASE - - \note FreeBSD is a community supported platform. See the - \l{Supported Platforms} page for more information. - - The system compiler on FreeBSD 4.x is GCC 2.95.4, which is not - officially supported by Qt 4. We develop using and recommend - ports/lang/gcc34. You will need to run configure with the - \c{-platform freebsd-g++34} arguments. Optionally, you may use - ports/lang/icc. - - The system compiler on FreeBSD 5.x and 6.x is GCC 3.4.4, which should be - sufficient to build Qt. You do not need to add any special arguments when - running configure. Optionally, you may use ports/lang/icc. - - Note that we do not actively test FreeBSD 4.x and 5.x. Our developers - migrated to 6.x after the Qt 4 launch. FreeBSD-CURRENT is not supported. - - \section1 HP-UX - - Qt supports HP-UX on both PA-RISC and the Itanium (IA64) architectures. - - \section2 PA-RISC - B.11.11 or later - - You can configure Qt for aCC in 32 and 64 bit mode (hpux-acc-64 or - hpux-acc-32), or GCC in 32 bit mode (hpux-g++). The default platform is - hpux-acc-32. The minimum required version for aCC (HP ANSI C++) on PA-RISC - is A.03.57. The supported GCC compiler is GCC 3.4.3. - - \section2 Itanium - B.11.23 or later - - You can configure Qt for aCC in 32 and 64 bit mode (hpuxi-acc-64 or - hpuxi-acc-32). GCC is currently unsupported. The default platform is - hpuxi-acc-64. The minimum required version for aCC (HP ANSI C++) on - Itanium is A.06.12. - - \section2 HP ANSI C++ (aCC) - - The hpux-acc-32 and hpux-acc-64 platforms are tested with aCC A.03.57. The - hpuxi-acc-32 and hpuxi-acc-64 platforms are tested with aCC A.06.10. - - \section2 GCC - - The hpux-g++ platform is tested with GCC 3.4.4. - - \section2 OpenGL Support - - Qt's \l{QtOpenGL}{OpenGL} module requires GLX 1.3 or later to be installed. - This is available for HP-UX 11i - see the - \l{http://docs.hp.com/en/5992-2331/ch04s02.html}{Graphics and Technical Computing Software} - section of the release notes for more information. - - \target IRIX - \section1 IRIX - 6.5.x - - \bold{IRIX is an unsupported platform. See the \l{Supported Platforms} page - and Qt's Software's online \l{Platform Support Policy} page for details.} - - Unpackaging and IRIX tar: - Because of long filenames some files will be cut off incorrectly with IRIX - tar. Please use GNU tar to unpack Qt packages. - - \section2 MIPSpro - - Qt 4.4.x requires MIPSpro version 7.4.2m. - - Note that MIPSpro version 7.4.4m is currently not supported, since it has - introduced a number of problems that have not yet been resolved. - We recommend using 7.4.2m for Qt development. However, please note the - unsupported status of this platform. - - \section1 Linux - - There are no known problems with using Qt on production versions of - Linux/x86, Linux/ppc, Linux/amd64 and Linux/ia64 (including Altix(R)). - - For the GCC compiler, please also see the relevant - \l{Platform and Compiler Notes#General Compiler Notes}{General Compiler Notes}. - - \section2 Installation problems - - See also the \l{Installation FAQ}. - - If you experience problems when installing new open source versions of Qt - versions, try to use the open source Qt archives (e.g., RPM) - provided by your Linux distribution. If you need to install the source (.tgz) - archive, be aware that you will probably end up with two different - versions of the Qt library installed on your system, which will probably - lead to link errors, like this: - \snippet doc/src/snippets/code/doc_src_platform-notes.qdoc 0 - Fix this by removing the old version of the library. - - If you have problems installing open source versions of Qt - provided by your Linux distribution (e.g., RPM), please consult the - maintainers of the distribution, not us. - - Some RPM versions have problems installing some of the Qt RPM archives - where installation stops with an error message warning about a - "Failed Dependency". Use the \c{--nodeps} option to \c rpm to workaround - this problem. - - \section2 Intel C++ Compiler for Linux - - Nokia currently tests the following compilers: - - \list - - \o Intel(R) C++ Compiler for applications running on IA-32, - Version 10.1 Build 20080602 Package ID: l_cc_p_10.1.017 - - \o Intel(R) C++ Compiler for applications running on Intel(R) 64, - Version 10.1 Build 20080602 Package ID: l_cc_p_10.1.017 - - \endlist - - We do not currently test the IA-64 (Itanium) compiler. - - \section2 Known Issues with Intel C++ Compiler for Linux - - \list - - \o Precompiled header support does not work in version 10.0.025 - and older. For these compilers, you should configure Qt with - -no-pch. Precompiled header support works properly in version - 10.0.026 and later. - \o Version 10.0.026 for Intel 64 is known to miscompile qmake when - building in release mode. For now, configure Qt with - -debug. Version 10.1.008 and later can compile qmake in release - mode. - \o Versions 10.1.008 to 10.1.015 for both IA-32 and Intel 64 are - known crash with "(0): internal error: 0_47021" when compiling - QtXmlPatterns, QtWebKit, and Designer in release mode. Version - 10.1.017 compiles these modules correctly in release mode. - \endlist - - \target Solaris - \section1 Solaris - 9 or later - - \section2 Unpackaging and Solaris tar - - On some Solaris systems, both Solaris tar and GNU tar have been reported - to truncate long filenames. We recommend using star instead - (http://star.berlios.de). - - Please note that WebKit is not supported for Solaris, regardless of - which compiler is used. - - \section2 CC - - See the notes for \l{Forte Developer / Sun Studio}. - - \section2 GCC - - Please use GCC 3.4.2 or later. - - Do not use GCC with Sun's assembler/linker, this will result in link-time - errors in shared libraries. Use GNU binutils instead. - - GCC 3.2.* is known to miscompile Qt due to an optimizer bug that will - cause the resulting binaries to hang. - - \section2 Forte Developer / Sun Studio - - Qt is tested using Sun Studio 12 (Sun CC 5.9). Go to - \l{Sun Studio Patches} page on Sun's Web site to download - the latest patches for your Sun compiler. - - Please note that Qt 4.6 is stricter in its STL requirements and - that the default STL implementation used by Sun CC does not pass - those requirements. This does not affect binary compatibility and - you can continue to use STL in your own code, but Qt's - STL-compatibility functions will be disabled. - - Sun CC ships with a secondary STL implementation (called stlport4) - which is standards-compliant and can be used by Qt. You can enable - it by passing the -library=stlport4 option to the compiler. Note - that this does not affect Qt's binary compatibility, but it may - affect that of other libraries and programs that use STL. - - \section2 Sun WorkShop 5.0 - - Sun WorkShop 5.0 is not supported with Qt 4. -*/ - -/*! - \page platform-notes-windows.html - \title Platform and Compiler Notes - Windows - \contentspage Platform and Compiler Notes - - This page contains information about the Windows platforms Qt is currently - known to run on, with links to platform-specific notes. More information - about the combinations of platforms and compilers supported by Qt can be - found on the \l{Supported Platforms} page. - - \tableofcontents - - \section1 Windows Vista - - At the time Qt %VERSION% was released, there were no known Vista-specific issues. - - \target Windows NT - \section1 Windows XP, Windows 2000 and Windows NT - - \section2 Installation location - - Installing Qt into a directory with spaces, e.g. C:\\Program Files, may - cause linker errors like the following: - \snippet doc/src/snippets/code/doc_src_platform-notes.qdoc 2 - - Install Qt into a subdirectory without spaces to avoid this problem. - - \section2 Possible GL conflict - - There is a known issue with running Microsoft NetMeeting, Lotus SameTime - and other applications that require screen grabbing while direct - rendering is enabled. Other GL-applications may not work as expected, - unless direct rendering is disabled. - - \section2 GCC (MinGW) - - We have tested Qt with this compiler on Windows XP. - The minimal version of MinGW supported is GCC 4.4. - - \note For users of the MinGW binary package: This package is now - based on MinGW 4.4. The installer no longer offers to download - MinGW for you, but rather offers to use a version of MinGW that - you already have installed on your machine. You just tell the - installer which directory MinGW is installed in. If you don't - already have MinGW 4.4 installed, you can download a .zip archive - from our \l{ftp://ftp.trolltech.com/misc/MinGW-gcc440_1.zip}{FTP - site}. This archive provides fixes to MinGW and support for - missing API, See the _patches directory in the archive for - details. - - \note A MinGW installation is only needed to build against the - binary package, not to run the pre-compiled binaries that are in - the package. - - \section2 Intel C++ Compiler (Windows, Altix) - - Qt 4 has been tested successfully with: - - \list - \o Windows - Intel(R) C++ Compiler for 32-bit applications, - Version 9.1.040. - \o Altix - Intel(R) C++ Itanium(R) Compiler for Itanium(R)-based - applications Version 8.1 Build 20050406 Package ID: l_cc_pc_8.1.030 - \endlist - - We currently only test the Intel compiler on 32-bit Windows versions. - - \section2 Visual Studio (Windows) - - We do most of our Windows development on Windows XP, using Microsoft - Visual Studio .NET 2005 and Visual Studio 2008 (both the 32- and 64-bit - versions). - - Qt works with the Standard Edition, the Professional Edition and Team - System Edition of Visual Studio 2005. - - In order to use Qt with the Visual Studio 2005/2008 Express Edition you need - to download and install the platform SDK. Due to limitations in the - Express Edition it is not possible for us to install the Qt Visual - Studio Integration. You will need to use our command line tools to - build Qt applications with this edition. - - The Visual C++ Linker doesn't understand filenames with spaces (as in - \c{C:\Program files\Qt\}) so you will have to move it to another place, - or explicitly set the path yourself; for example: - - \snippet doc/src/snippets/code/doc_src_compiler-notes.qdoc 0 - - If you are experiencing strange problems with using special flags that - modify the alignment of structure and union members (such as \c{/Zp2}) - then you will need to recompile Qt with the flags set for the - application as well. - - If you're using Visual Studio .NET (2002) Standard Edition, you should be - using the Qt binary package provided, and not the source package. - As the Standard Edition does not optimize compiled code, your compiled - version of Qt would perform suboptimally with respect to speed. - - With Visual Studio 2005 Service Pack 1 a bug was introduced which - causes Qt not to compile, this has been fixed with a hotfix available - from Microsoft. See this - \l{http://qt.nokia.com/developer/faqs/faq.2006-12-18.3281869860}{Knowledge Base entry} - for more information. - - There currently is a problem when compiling Qt with Visual Studio 2010 for 64-bit. - Its optimizer causes trouble and generates code that crashes for the release builds. - To avoid the crashes, You need to apply the hotfix in the following article - http://support.microsoft.com/kb/2280741. -*/ - -/*! - \page platform-notes-mac.html - \title Platform and Compiler Notes - Mac OS X - \contentspage Platform and Compiler Notes - - This page contains information about the Mac OS X versions Qt is currently - known to run on, with links to platform-specific notes. More information - about the combinations of platforms and compilers supported by Qt can be - found on the \l{Supported Platforms} page. - - \tableofcontents - - \section1 General Information - - Qt 4.6 applications can only be deployed on Mac OS X 10.4 (Tiger) - and higher. - - Qt 4.4 and Qt 4.5 development is only supported on Mac OS X 10.4 and up. - Applications built against these version of Qt can be deployed on Mac OS X - 10.3, but cannot be developed on that version of the operating system due - to compiler issues. - - Qt 4.3 has been tested to run on Mac OS X 10.3.9 and up. See notes on - the binary package for more information. - - Qt 4.1 has been tested to run on Mac OS X 10.2.8 and up. Qt 4.1.4 is the - last release to work with Mac OS X 10.2. - - \section2 Required GCC version - - Apple's GCC 4 that is shipped with the Xcode Tools for both Mac OS X 10.4 - and 10.5 will compile Qt. There is preliminary support for GCC 4.2 which - is included with Xcode Tools 3.1+ (configurable with - \c{-platform macx-g++42}). - - Please use the latest GCC 3.3 from Apple or a later version of GCC 3. - The GCC 3.3 that is provided with Xcode 1.5 is known to generate bad code. - Use the November 2004 GCC 3.3 updater \l{http://connect.apple.com}{available from Apple}. - - \section2 Binary Package - - The binary package requires that you have your .qt-license file in your - home directory. Installer.app cannot complete without a valid .qt-license - file. Evaluation users of Qt will have information about how to create - this file in the email they receive. - - The binary package was built on Mac OS X 10.4 with Xcode Tools 2.1 - (GCC 4.0.0) for Qt 4.1.0, Xcode Tools 2.2 (GCC 4.0.1) for Qt 4.1.1-4.1.4 - and Xcode Tools 2.3 for 4.2.0. It will only link executables built - against 10.4 (or a 10.4 SDK). You should be able to run applications - linked against these frameworks on Mac OS X 10.3.9 and Mac OS X 10.4+. - If you require a different configuration, you will have to use the - source package and build with GCC 3.3. - - \section2 Mac OS X on Intel hardware - - Qt 4 fully supports both the Intel and PowerPC architectures on the Mac. - As of Qt 4.1 it is possible to support the Intel architecture by - creating Universal Binaries with qmake. As of Qt 4.1 it is possible to - build Qt as a set of universal binaries and frameworks from configure by - adding these extra flags: - - \snippet doc/src/snippets/code/doc_src_platform-notes.qdoc 3 - - If you are building on Intel hardware you can omit the sdk parameter, but - PowerPC hardware requires it. - - You can also generate universal binaries using qmake. Simply add these - lines to your .pro file: - - \snippet doc/src/snippets/code/doc_src_platform-notes.qdoc 4 - - \section2 Build Issues - - If Qt does not build upon executing make, and fails with an error message - such as - - \snippet doc/src/snippets/code/doc_src_platform-notes.qdoc 5 - - this could be an indication you have upgraded your version of Mac OS X - (e.g. 10.3 to 10.4), without upgrading your Developer Tools (Xcode Tools). - These must match in order to successfully compile files. - - Please be sure to upgrade both simultaneously. If problems still occur, - contact support. - - \section2 Fink - - If you have installed the Qt for X11 package from \l{Fink}, - it will set the QMAKESPEC environment variable to darwin-g++. This will - cause problems when you build the Qt for Mac OS X package. To fix this, simply - unset your QMAKESPEC or set it to macx-g++ before you run configure. - You need to have a fresh Qt distribution (make confclean). - - \section2 MySQL and Mac OS X - - There seems to be a issue when both -prebind and -multi_module are - defined when linking static C libraries into dynamic library. If you - get the following error message when linking Qt: - - \snippet doc/src/snippets/code/doc_src_platform-notes.qdoc 6 - - re-link Qt using -single_module. This is only a problem when building the - MySQL driver into Qt. It does not affect plugins or static builds. - - \section2 Qt and Precompiled Headers (PCH) - - Starting with Qt 3.3.0 it is possible to use precompiled headers. They - are not enabled by default as it appears that some versions of Apple's - GCC and make have problems with this feature. If you want to use - precompiled headers when building the Qt source package, specify the - -pch option to configure. If, while using precompiled headers, you - encounter an internal compile error, try removing the -include header - statement from the compile line and trying again. If this solves the - problem, it probably is a good idea to turn off precompiled headers. - Also, consider filing a bug report with Apple so that they can - improve support for this feature. - - \section2 Attributes - The following lists a set of useful attributes that can be used to tweak applications - on Mac: - - Qt::AA_MacPluginApplication, Qt::AA_DontUseNativeMenuBar, Qt::AA_MacDontSwapCtrlAndMeta - Qt::WA_MacNoClickThrough, Qt::WA_MacOpaqueSizeGrip, Qt::WA_MacShowFocusRect, - Qt::WA_MacNormalSize, Qt::WA_MacSmallSize, Qt::WA_MacMiniSize, Qt::WA_MacVariableSize, - Qt::WA_MacBrushedMetal, Qt::WA_MacAlwaysShowToolWindow, Qt::WA_MacFrameworkScaled, - Qt::WA_MacNoShadow, Qt::Sheet, Qt::Drawer, Qt::MacWindowToolBarButtonHint, - QMainWindow::unifiedTitleAndToolBarOnMac, WA_MacNoCocoaChildWindow - - \section2 Mixing Qt with native code - Two classes are awailable for either adding native Cocoa views/controls - inside a Qt application, or the opposite, embedding Qt into a native - Cocoa application: - - QMacCocoaViewContainer, QMacNativeWidget - - \section3 Using native Cocoa panels - Launching native Cocoa panels from within a Qt application can sometimes - be problematic. The reason is that Qt's event dispatcher is more flexible - than what Cocoa offers, and lets the user spin the event dispatcher (and - running QEventLoop::exec) without having to think about whether or not modal - dialogs are showing on screen (which is a difference to Cocoa). Therefore - we need to do special bookkeeping in Qt to handle this correctly, which - unfortunately make mixing in native panels hard. The best way at the moment - to do this, is to follow the pattern below, where we post the call to the - function with native code rather than calling it directly. Then we know that - Qt has cleanly updated any pending event loop recursions before the native - panel is shown: - - \code - #include - - class NativeProxyObject : public QObject - { - Q_OBJECT - public slots: - void execNativeDialogLater() - { - QMetaObject::invokeMethod(this, "execNativeDialogNow", Qt::QueuedConnection); - } - - void execNativeDialogNow() - { - NSRunAlertPanel(@"A Native dialog", @"", @"OK", @"", @""); - } - - }; - - #include "main.moc" - - int main(int argc, char **argv){ - QApplication app(argc, argv); - NativeProxyObject proxy; - QPushButton button("Show native dialog"); - QObject::connect(&button, SIGNAL(clicked()), &proxy, SLOT(execNativeDialogLater())); - button.show(); - return app.exec(); - } - - \endcode -*/ - -/*! - \page platform-notes-windows-ce.html - \title Platform and Compiler Notes - Windows CE - \contentspage Platform and Compiler Notes - - This page contains information about the Windows CE and Windows Mobile - platforms Qt is currently known to run on, with links to platform-specific - notes. More information about the combinations of platforms and compilers - supported by Qt can be found on the \l{Supported Platforms} page. -*/ - -/*! - \page platform-notes-symbian.html - \title Platform and Compiler Notes - Symbian - \contentspage Platform and Compiler Notes - \ingroup platform-specific - \brief Information about the state of support for the Symbian platform. - - This page describes implementation details regarding the Qt for Symbian port. To get - started with application development for Symbian devices, read the \l - {http://doc.qt.nokia.com/qtcreator/creator-developing-symbian.html} - {Connecting Symbian Devices} document. - - \section1 Source Compatibility - - Qt for Symbian provides the same level of source compatibility guarantee as - given for other platforms. That is, a program which compiles against a given - version of Qt for Symbian will also compile against all future versions of the - same major release. - - \section1 Binary Compatibility - - As with every supported platform, Qt strives to maintain application - behavior and binary compatibility throughout the lifetime of the Qt 4.x - major version and on the \l {Supported Devices}{Symbian devices that support Qt}. - Symbian support in Qt SDK and Ovi Store were introduced with Qt 4.6. Each Qt - release contains bug fixes that might change the API behavior and thereby - affect application compatibility. - - In addition, Symbian devices have different input methods, such as different - keyboard styles or touch input, screen sizes, memory, and CPU and GPU - capabilities. Therefore, you must test applications on specific target - devices to ensure compatibility. In order to build applications that are - supported also on earlier devices, select the target in Qt SDK carefully. - Generally, an earlier target (such as S60 5th Edition) is supported on a - larger number of devices than a later target (such as Symbian Belle). - - \target Supported Devices - \section1 Supported Devices - - The \l {http://developer.qt.nokia.com/wiki/support_for_Symbian}{Support for Symbian} document - details the Qt support on different Symbian devices. - - The \l {http://www.developer.nokia.com/Community/Wiki/Nokia_Smart_Installer_for_Symbian#Supported_Devices} - {Nokia Smart Installer for Symbian} document lists how Qt is supported on - different Symbian devices through Smart Installer. - - Qt versions are supported by Symbian devices as follows: - \list - \o Qt 4.6 is supported by S60 3rd Edition feature pack 1 and newer devices - through \l {http://www.developer.nokia.com/Community/Wiki/Nokia_Smart_Installer_for_Symbian}{Smart Installer}. - \o Qt 4.7.3 is supported by S60 5th Edition and newer devices - through \l {http://www.developer.nokia.com/Community/Wiki/Nokia_Smart_Installer_for_Symbian}{Smart Installer}. - \endlist - - Symbian devices have a pre-installed Qt support as follows: - \list - \o Symbian Anna: Qt 4.7.3 in C: drive. Note that Qt 4.7.4 is supported in Symbian Anna - through \l {http://www.developer.nokia.com/Community/Wiki/Nokia_Smart_Installer_for_Symbian}{Smart Installer}. - \o Symbian Belle: Qt 4.7.4 in device firmware (ROM). - \endlist - - - \section1 Functionality Support - - The following technologies and classes are not supported: - \list - \o QtConcurrent - \o QtDBus - \o \l {http://doc.qt.nokia.com/4.8/printing.html}{Printing support} - \o Qt3Support - \endlist - - The following technologies have limited support: - - - \table - \header \o Module - \o Note - \row \o QtSql - \o The supported drivers are SQLite and QSYMSQL. - \row \o QtMultimedia - \o For support details see \l {Multimedia Support} section. - \row \o QtGui - \o QtGui's widgets are deprecated (i.e. they are available but not - recommended to use) in the Symbian port. It is recommended to use \l - {http://doc.qt.nokia.com/qt-components-symbian-1.1/symbian-components-functional.html} - {Qt Quick Components for Symbian} instead, because they provide - better look and feel on Symbian devices. - - Moreover, the following classes of QtGui \bold {should not - be used} in a Symbian application: - - \list - \o QFileDialog with the \c DontUseNativeDialog option - \o QColorDialog with the \c DontUseNativeDialog option - \o QFontDialog - \o QWizard - \o QCalendarWidget - \o QDateTimeEdit - \o QMdiArea - \o QDockWidget - \o QMdiSubWindow - \o QPrintPreviewWidget - \endlist - - QScrollArea: The scrolling and focus handling of QScrollArea's all - scrollable widgets, for example QListView, differs from native Avkon - list widgets' one. Native Avkon scrollable components support - touch-gesture-based scrolling by dragging and flicking the UI - component but this functionality is not implemented in Qt widgets. - Scrolling by dragging and flicking works also in Qt Quick Components - that implements the \l - {http://www.developer.nokia.com/Resources/Library/Symbian_Design_Guidelines/} - {Symbian design guidelines}. - - \endtable - - \section1 Compiler Notes - - For the application development the necessary compiler toolchain is included in \l - {http://qt.nokia.com/downloads}{Qt SDK}. For instructions compiling Qt - itself see the \l - {http://doc.qt.nokia.com/stable/install-symbian.html} - {Installing Qt for the Symbian platform} document. - - \section1 Known Issues - - Known issues can be found by visiting the - \l{http://qt.gitorious.org/qt/pages/QtKnownIssues}{wiki page} with an - up-to-date list of known issues, and the list of bugs can be found by - \l{http://bugreports.qt.nokia.com/browse/QTBUG/component/19171}{browsing} the - S60 component in Qt's public task tracker, located at - \l{http://bugreports.qt.nokia.com/}{http://bugreports.qt.nokia.com/}. - - For information about mixing exceptions with Symbian leaves, see - \l{Exception Safety with Symbian}. - - \section1 Required Capabilities - - The Qt libraries are typically signed with \c{All -TCB} capabilites but - that does not mean your Qt application needs to be signed with the same - capabilities to function properly. The capabilities your application needs - to function properly depends on which parts of Qt you use. - In a Qt application Symbian capabilities are defined in the - \l {http://doc.qt.nokia.com/4.8/qmake-variable-reference.html#target-capability} - {TARGET.CAPABILITY} qmake variable in the project file. - Here is an overview for which capabilities may be needed when using different modules: - - \table - \header \o Module - \o Required Symbian Capability - \row \o QtCore - \o \c PowerMgmt if QProcess::kill(...) or QProcess::terminate(...) is called. - \row \o QtCore - \o \c AllFiles when \l{http://wiki.forum.nokia.com/index.php/Capabilities_%28Symbian_Signed%29/AllFiles_Capability}{accessing specific areas.} - \row \o QtDeclarative - \o \c NetworkServices is automatically added for this module if no capabilities are explicitly specified. - \row \o QtNetwork - \o \c NetworkServices is automatically added for this module if no capabilities are explicitly specified. - \row \o QtNetwork - \o \c ReadUserData is required to include all the phone's SSL certificates in the system's default CA certificate list - (for example those added by the user or stored in the SIM card), - without this capability only the CA certs built into the phone are used. - \row \o QtMultimedia - \o \c UserEnvironment if QAudioInput is used. - \row \o QtWebKit - \o \c NetworkServices is automatically added for this module if no capabilities are explicitly specified. - \endtable - - \note Some modules rely on other modules. E.g. QtWebkit and QtDeclarative - depend on QtNetwork and therefore any application that - depends on these modules is also likely to need \c NetworkServices capability. - - For more information see the documentation of the individual Qt classes. If - a class does not mention Symbian capabilities, it requires none. - - \target Multimedia Support - \section1 Multimedia Support - - Qt Mobility provides a high-level API for multimedia functionality with - \l{http://doc.qt.nokia.com/qtmobility/multimedia.html}{QtMultimediaKit}. - In addition, Qt provides the low-level \l {QtMultimedia}{QtMultimedia} - module that is internally used by the QtMultimediaKit. For more information - on developing multimedia applications for Symbian devices, see - \l {http://www.developer.nokia.com/info/sw.nokia.com/id/4abf12e7-72d8-45ef-b1a2-46184abe18ba/Guide_for_Qt_Multimedia_Developers.html} - {Guide for Qt Multimedia Developers}. - - Moreover, there is a third multimedia-related module called Phonon. Qt - provides two backends for the Phonon module in Symbian: \i MMF and \i Helix. - - Note that Phonon is a legacy module and the QtMultimediaKit module is - replacing Phonon in Qt 5. Although Phonon is supported in Symbian for - backwards compatibility and there is no plan to remove Phonon from Symbian - any new applications should use QtMultimediaKit in Symbian using Qt 4.7 - bundle. The QtMultimediaKit feature set is comparable to that in Phonon. - - The following applies to Phonon: - \list - \o MMF Phonon backend supports video and sound playback through Symbian's - Multimedia Framework, MMF. Phonon's video playback may show artifacts when - the video is moved or resized (for instance, during device orientation - changes from portrait to landscape and vice versa). This problem is present - on S60 5th Edition and earlier versions, as well as in Symbian Anna devices. - \o The audio and video formats that Phonon supports depends on what support - the platform provides for MMF. The emulator is known to have limited - codec support. - \o In addition, there exists a backend for the Helix framework. However, since - it is not shipped with Qt, its availability depends on the Symbian platform - in use. If the MFF plugin fails to load, the Helix plugin, if present on the - device, will be loaded instead. - \endlist - - \section1 Hardware Accelerated Rendering - - The default graphics system on Symbian Anna is OpenVG, which uses OpenVG - hardware to accelerate \l QPainter functions. There are a few exceptions, - where Qt will use software rendering fallback. - - Devices like the N8 and C7 only have 32Mb of GPU memory and limited support - for EGL surface transparency. These devices can be identified by querying - the\c GL_RENDERER or \c VG_RENDERER string which evaluates to \c {VideoCore III}. - On these devices, Qt will use software rendering in cases listed below. - - \list - \o Translucent windows - \o Dialogs - \o Popups - \endlist - - \section1 OpenGL Support in Symbian - - Qt 4.7 introduces the \l {QtOpenGL} module. QtOpenGL is - supported on devices which support OpenGL ES 2.0. Symbian platforms prior - to Symbian Anna (and Symbian^3) are not supported. - - \l QGLWidget usage as a \l QGraphicsView viewport is not recommended on - Symbian. The OpenVG graphics system is not able to manage OpenGL graphics - resources. Also, a QGLWidget object is not able to release its GPU resources - when the application goes to the background. If OpenGL functionality is - needed, \l { http://doc.qt.nokia.com/4.7-snapshot/qapplication.html#setGraphicsSystem} - {OpenGL graphics system} usage is recommended. If an application - decides to use QGLWidget, then it is the application's responsibility to - destroy and release QGLWidget and related OpenGL resources when the - application goes to the background. Otherwise, the \l{Graphics Out Of Memory monitor} - may decide to kill the application as it consumes GPU resources while in the - background. - - \note \l QGLBuffer, \l QGLFramebufferObject, \l QGLPixelBuffer, \l - QGLShader, and \l QGLShaderProgram are direct GPU resources and it is the - application's responsibility to manage them. - - \section1 UI Performance in S60 3rd and 5th Edition Devices - - Qt uses the QPainter class to perform low-level painting on widgets and - other paint devices. QPainter provides functions to draw complex shapes, - aligned text and pixmaps. It can also do vector path clipping, coordinate - transformations and Porter-Duff composition. If the underlying graphics - architecture does not support all of these operations then Qt uses the - raster graphics system for rendering. - - In Symbian Anna (and Symbian^3) Qt uses hardware accelerated graphics as explained above. - This is enabled by \l - {http://library.developer.nokia.com/index.jsp?topic=/GUID-E35887BB-7E58-438C-AA27-97B2CDE7E069/GUID-D93978BE-11A3-5CE3-B110-1DEAA5AD566C.html} - {ScreenPlay Graphics Architecture} in these devices. - - Most of the Symbian S60 3rd and 5th Edition devices have a - graphics architecture that does not have native support for all functions - provided by QPainter. In these \l - {http://library.developer.nokia.com/index.jsp?topic=/GUID-E35887BB-7E58-438C-AA27-97B2CDE7E069/GUID-D93978BE-11A3-5CE3-B110-1DEAA5AD566C.html} - {non-ScreenPlay} devices Qt uses the raster - graphics system by default that has a performance penalty compared - to native Symbian rendering. - - In order to be able to perform all functions provided by QPainter, the - raster graphics system needs to have pixel level framebuffer access. To - make this possible in non-ScreenPlay devices Qt has to create an - additional offscreen buffer that is the target for all Qt rendering - operations. Qt renders the widget tree to the offscreen buffer and the - offscreen buffer is blitted to the framebuffer via Symbian Window Server. - - The following table shows the rendering stacks of native Symbian and Qt in - \l {http://library.developer.nokia.com/index.jsp?topic=/GUID-E35887BB-7E58-438C-AA27-97B2CDE7E069/GUID-D93978BE-11A3-5CE3-B110-1DEAA5AD566C.html} - {non-ScreenPlay devices}. - - \table - \header \o Symbian - \o Qt - \row \o \image symbian-rendering-stack-non-screenplay.png - \o \image symbian-qt-rendering-stack-non-screenplay.png - \endtable - - The following diagrams show a simplified sequence of drawing a pixmap in - a non-ScreenPlay device. - - \table - \header \o Symbian - \row \o \image symbian-draw-pixmap-sequence.png - \endtable - - \table - \header \o Qt - \row \o \image symbian-qt-draw-pixmap-sequence.png - \endtable - - When compared to a native Symbian application, Qt does an additional blit - to the offscreen buffer before drawing to the framebuffer. That is the - performance penalty which needs to be paid to get all functionality - provided by QPainter in non-ScreenPlay architecture. -*/ - -/*! - \page platform-notes-embedded-linux.html - \title Platform and Compiler Notes - Embedded Linux - \contentspage Platform and Compiler Notes - - This page contains information about the Embedded Linux platforms Qt is - currently known to run on, with links to platform-specific notes. More - information about the combinations of platforms and compilers supported - by Qt can be found on the \l{Supported Platforms} page. -*/ diff --git a/doc/src/platforms/platform-notes.qdocinc b/doc/src/platforms/platform-notes.qdocinc deleted file mode 100644 index e69de29..0000000 diff --git a/doc/src/platforms/supported-platforms.qdoc b/doc/src/platforms/supported-platforms.qdoc index 92bf12d..a3fc390 100644 --- a/doc/src/platforms/supported-platforms.qdoc +++ b/doc/src/platforms/supported-platforms.qdoc @@ -49,8 +49,6 @@ - Requirements for developing with Qt on Windows. \o \l{Installing Qt for Windows}{Installing Qt for Windows} - Build Qt for Windows development. - \o \l{Platform and Compiler Notes - Windows}{Platform and Compiler Notes - Windows} - - Windows platform specific notes. \o \l{Getting Started Guides}{Getting started} - Getting started developing for Windows \endlist @@ -135,8 +133,6 @@ - Software required to run Qt on Linux/X11. \o \l{Installing Qt for X11 Platforms}{Installing Qt for X11 Platforms} - Build Qt for Linux/X11 development. - \o \l{Platform and Compiler Notes - X11}{Platform and Compiler Notes - X11} - - Platform specific notes. \o \l{Getting Started Guides}{Getting started} \endlist @@ -223,8 +219,6 @@ - Software required to run Qt on Mac OS X. \o \l{Installing Qt for X11 Platforms}{Installing Qt for X11 Platforms} - Build Qt for Mac OS X development. - \o \l{Platform and Compiler Notes - Mac OS X}{Platform and Compiler Notes - Mac OS X} - - Platform specific notes. \o \l{Getting Started Guides}{Getting started} \endlist @@ -285,82 +279,6 @@ \note Qt also provides support for 64-bit applications on top of Cocoa APIs. */ /*! - \page windowsCE-Mobile-support.html - \title Support for Windows CE and Windows Mobile - \brief Platform support for Windows CE and Windows Mobile. - \ingroup platform-specific - \ingroup platform-details - - \section1 Qt on Windows CE and Windows Mobile - - Qt is a C++ application and UI framework. You can use Qt to write - rich and high performance applications using an intuitive API - available for a wide range of devices. Use the code from one single - code-base and rebuild for all \l{Supported Platforms}{supported - Windows CE/Mobile versions as well as other other platforms}. - - Supporting most existing Windows CE configurations and with minimal - hardware dependencies, Qt is easy to build even for custom hardware - configurations. Unused components and features can even be compiled out. - - \section1 Getting Started on Windows CE/Mobile - - \list - \o \l{Supported Platforms}{Supported Windows CE/Mobile platforms} - - Qt supports a wide range of Windows CE/Mobile platform variants. - \o \l{Qt for Windows CE Requirements}{Qt for Windows CE/Mobile - Requirements} - Software required to run Qt on Windows CE/Mobile. - \o \l{Installing Qt for Windows CE}{Installing Qt for - Windows CE/Mobile Platforms} - Build Qt for Windows CE/Mobile - development. - \o \l{Platform and Compiler Notes - Windows CE}{Platform and - Compiler Notes - Windows CE/Mobile} - Platform specific notes. - \o \l{Getting Started Guides}{Getting started} - \endlist - - \section1 Key Features for Windows CE/Mobile Development - - On top of all the tools and API and class libraries that Qt offers, - Qt for Windows CE provides you with added functionality for an - optimized embedded development environment. - - \section2 Native and Customizable Look and Feel - - Windows Mobile and Windows CE styles are available with Qt. At runtime, - Qt applications will detect which style to use. The look and feel of - your applications can also be easily customized in a fraction of - the time and lines of code required for traditional UI styling with - Qt Style Sheets. - - \section2 Advanced Text Layout Engine - - Qt for Windows CE supports TrueType and raster fonts. Qt also has - extended Unicode support and right-to-left languages. Qt's rich text - engine adds capabilities for complex text layouts including tables, - path tracing and text which flows around shapes. - - \section2 Qt for Windows CE/Mobile also provide support for: - - \list - \o Graphics Acceleration using \l{Qt for Windows CE and OpenGL - ES}{OpenGL ES} - \o \l{Graphics View Framework}{2D graphics canvas} capable of - handling millions of items. - \o \l{Qt Designer Manual}{Qt Designer} for GUI layout and - forms builder. - \o \l{Qt Linguist Manual}{Qt Linguist} provides internationalization - and translation features. - \endlist - - Applications created with Qt for Windows CE/Mobile can be ported to - Symbian, Maemo and any other OS that Qt supports. - - Additional \l{Cross-Platform and Platform-Specific Development} - information. - -*/ - -/*! \page embeddedLinux-support.html \title Support for Embedded Linux \brief Platform support for Embedded Linux. @@ -378,6 +296,8 @@ one single code-base and rebuild for all \l{Supported Platforms} {supported platforms}. + \note Qt on Embedded Linux will not exist as a separate platform for Qt 5.0. + \section1 Getting Started on Embedded Linux \list @@ -387,8 +307,6 @@ Requirements} - Software required to run Qt on Embedded Linux. \o \l{Installing Qt for Embedded Linux}{Installing Qt for Embedded Linux} - Build Qt for development on Embedded Linux. - \o \l{Platform and Compiler Notes - Embedded Linux}{Platform and - Compiler Notes - Embedded Linux} - Platform specific notes. \o \l{Getting Started Guides}{Getting started} \endlist @@ -437,248 +355,6 @@ */ /*! - \page symbian-support.html - \title Support for Symbian - \brief Platform support for Symbian. - \ingroup platform-specific - \ingroup platform-details - - \section1 Qt on Symbian - - Qt provides support for the Symbian platform with integration - to the S60 framework. If you are developing apps for the Symbian, - Maemo or MeeGo platforms in most cases, you can use Qt under the - free LGPL licensing option. Qt is cross-platform, and that means - that you can use the code from one single code-base and rebuild - for all \l{Supported Platforms}{supported platforms}. - - \section1 Getting Started on Symbian - - \list - \o \l{Supported Platforms}{Supported platform} - - Details on the Qt support for Symbian. - \o \l{Qt for the Symbian platform Requirements}{Qt for the - Symbian platform Requirements} - Software required to run Qt - on Symbian. - \o \l{Installing Qt for the Symbian platform}{Installing Qt - for the Symbian platform} - Build Qt for Symbian development. - \o \l{Platform and Compiler Notes - Symbian}{Platform Notes - Symbian} - - Platform specific notes. - \o \l{Getting Started Guides}{Getting started} - \o \l{Qt Quick Components for Symbian 1.1}{Qt Quick Components for Symbian} - - provides a QML component set for the Symbian^3 platform - \endlist - - \section1 Key Features for Symbian Development - - On top of all the tools and the API and class libraries that Qt - offers, Qt provides you with added functionality for an optimized - Symbian development experience. - - \section2 Native Look and Feel - - Qt will detect which theme the phone is running and applies the - style at runtime to your Qt application. The look and feel of your - applications can also be easily customized in a fraction of the - time and lines of code required for traditional UI styling with - Qt Style Sheets. - - The \l{Qt Quick Components for Symbian 1.1}{Qt Quick Components for Symbian 1.1} - provides a native QML component set. - - \section2 Graphics Features - - Qt for Symbian contains a powerful paint engine that provides - features such as anti, aliasing, gradients, curves and transparency. - It also has animation support with timelines and easing curves. It - is already targeting future device technology by supporting hardware - acceleration using OpenVG. - - \section2 Device Configurations - - Using Qt for Symbian all supported Symbian devices provides automatic - support for swiching between landscape and portrait mode, different - screen resolutions as well as touch screen and key pad input. - - \section2 Cross-Platform Development using Qt Creator - - \l{http://doc.qt.nokia.com/qtcreator-snapshot/index.html}{Qt Creator} is - a complete Cross-platform IDE included in the Qt SDK. The IDE allows - programmers to create, build, debug and run Qt applications accross all - supported platforms. - - \section3 Licensing - - Qt for Symbian is available under the Qt Commercial License, the LGPL - v. 2.1 "LGPL") and the GPL v. 3.0. Symbian currently licenses their - software products under either the Symbian Foundation License or the - Eclipse Public License ("EPL"). While the LGPL and the EPL are not - compatible and may not be combined on a file-by-file basis, they may - be used in a common environment provided that the interaction between - Qt and Symbian is limited to: dynamic linking, inter-process - communication and data exchange. Therefore, most Symbian developers - can use Qt for Symbian under the LGPL. - - Additional \l{Cross-Platform and Platform-Specific Development} - information. - -*/ -/*! - \page maemo-support.html - \title Support for Maemo - \brief Platform support for Maemo. - \ingroup platform-specific - \ingroup platform-details - - \section1 Qt on Maemo - - Qt is a comprehensive application and UI framework for developing - Maemo applications that can also be deployed across major - device and desktop operating systems without rewriting the source code. - If you are developing apps for the Symbian, Mameo platforms - in most cases, you can use Qt under the free LGPL licensing option. - Qt is cross-platform, and that means that you can use the code from - one single code-base and rebuild for all \l{Supported Platforms} - {supported platforms}. Maemo 6 is now MeeGo. - - \section1 Getting Started on Maemo - \list - \o \l{Supported Platforms}{Supported Maemo platforms} - - Qt support for Maemo versions. - \omit - \o \l{Qt for Maemo Requirements}{Qt for Maemo - Requirements} - Software required to run Qt on Maemo. - \o \l{Installing Qt for Maemo}{Installing Qt for - Maemo} - Build Qt for Maemo development. - \o \l{Platform and Compiler Notes - Maemo}{Platform and - Compiler Notes - Maemo} - Platform specific notes. - \endomit - \o \l{Getting Started Guides}{Getting started} - \endlist - - \section1 Key Features for Maemo Development - - \section2 Native Look and Feel - - Qt will detect which theme the device is running and applies the - style at runtime to your Qt application. Widgets are optimized - for touch screen usage. - - \section2 Graphics Features - - Qt for Maemo provides a powerful paint engine that cotain - features such as anti aliasing, gradients, curves and transparency. - It also has animation support with timelines and easing curves. Qt - for Maemo also supports hardware acceleration using ARM NEON - and OpenGL ES 2.0. - - \section2 Device Configurations - - Applications developed with Qt for Maemo will across all - supported Maemo devices provide automatic support for switching - between landscape and portrait mode. They will support input methods, - including predictive text input and on-screen keyboard. The - applications will also have support for one finger touch events and - gestures, and have configurable kinetic scrolling. - - \section2 Maemo - Linux/X11 - - Qt supports a wide range of X11 platform variants, such as: Solaris, - AIX, HP-UX, Maemo 5 and MeeGo. Qt for Maemo contains all Qt modules - and features the same functionality as the Qt on X11 version. - - \section2 Cross-Platform Development using Qt Creator - - \l{http://doc.qt.nokia.com/qtcreator-snapshot/index.html}{Qt Creator} is - a complete Cross-platform IDE included in the Qt SDK. The IDE allows - programmers to create, build, debug and run Qt applications accross all - supported platforms. - - Additional \l{Cross-Platform and Platform-Specific Development} - information. -*/ - -/*! - - \page meego-support.html - \title Support for MeeGo - \brief Platform support for MeeGo. - \ingroup platform-specific - \ingroup platform-details - - \section1 Qt on MeeGo - - Qt is a comprehensive application and UI framework for developing - MeeGo applications that can also be deployed across major - device and desktop operating systems without rewriting the source code. - If you are developing apps for the Symbian, MeeGo platforms - in most cases, you can use Qt under the free LGPL licensing option. - Qt is cross-platform, and that means that you can use the code from - one single code-base and rebuild for all \l{Supported Platforms} - {supported platforms}. - - \section1 Getting Started on MeeGo - - \list - \o \l{Supported Platforms}{Supported MeeGo platforms} - - Qt support for MeeGo versions. - \omit - \o \l{Qt for MeeGo Requirements}{Qt for MeeGo - Requirements} - Software required to run Qt on MeeGo. - \o \l{Installing Qt for MeeGo}{Installing Qt for - MeeGo} - Build Qt for MeeGo development. - \o \l{Platform and Compiler Notes - MeeGo}{Platform and - Compiler Notes - MeeGo} - Platform specific notes. - \endomit - \o \l{Getting Started Guides}{Getting started} - \endlist - - \section1 Key Features for MeeGo Development - - \section2 Native Look and Feel - - Qt will detect which theme the device is running and applies the - style at runtime to your Qt application. Widgets are optimized - for touch screen usage. - - \section2 Graphics Features - - Qt for MeeGo provides a powerful paint engine that cotain - features such as anti aliasing, gradients, curves and transparency. - It also has animation support with timelines and easing curves. Qt - for MeeGo also supports hardware acceleration using ARM NEON, x86, - and OpenGL ES 2.0. - - \section2 Device Configurations - - Qt is the foundation of MeeGo UI and application development and - therefore Qt will be present in all upcoming MeeGo devices. Qt - can provide automatic support for: - \list - \o Switching between landscape and portrait mode - \o Input Methods, including predictive text input and on-screen - keyboard - \o Configurable kinetic scrolling - \endlist - - \section2 Maemo - Linux/X11 - - Qt supports a wide range of X11 platform variants, such as: Solaris, - AIX, HP-UX, Maemo 5 and MeeGo. Qt for MeeGo contains all Qt modules - and features the same functionality as the Qt on X11 version. - - \section2 Cross-Platform Development using Qt Creator - - \l{http://doc.qt.nokia.com/qtcreator-snapshot/index.html}{Qt Creator} is - a complete Cross-platform IDE included in the Qt SDK. The IDE allows - programmers to create, build, debug and run Qt applications accross all - supported platforms. - - Additional \l{Cross-Platform and Platform-Specific Development} - information. -*/ - -/*! \page supported-platforms.html \title Supported Platforms \brief The platforms supported by Nokia for Qt. @@ -697,26 +373,21 @@ \o {2,1} Qt Cross Platform Support \header \o {1,1} Desktop - \o {1,1} Mobile/Embedded + \o {1,1} Embedded \row \o \l{Support for Windows}{Windows} - \o \l{Support for Windows CE and Windows Mobile}{Windows CE and Windows Mobile} + \o \l{Support for Embedded Linux}{Embedded Linux} \row \o \l{Support for Linux/X11}{Linux/X11} - \o \l{Support for Embedded Linux}{Embedded Linux} \row \o \l{Support for Mac OS X}{Mac OS X} - \o \l{Support for Symbian}{Symbian} - \row - \o\l{Support for MeeGo}{MeeGo} - \o\l{Support for Maemo}{Maemo} \endtable \section1 Supported Platform Details The Qt team strives to provide support for the platforms most frequently used by Qt users. We have designed our internal testing procedure to - divide platforms into three test categories (Tier 1, Tier 2 and Tier 3) in order + divide platforms into three test categories (Tier 1 and Tier 2) in order to prioritize internal testing and development resources so that the most frequently used platforms are subjected to our most rigorous testing processes. @@ -743,30 +414,16 @@ \table \header \o Platform \o Compilers - \row \o Linux (32 and 64-bit) - \o gcc 4.2 - \row \o Microsoft Windows XP - \o gcc 4.4 (MinGW) (32-bit), MSVC 2005 (32 and 64-bit) - \row \o Microsoft Windows Vista - \o MSVC 2005, 2008 - \row \o Microsoft Windows Vista 64bit - \o MSVC 2008 - \row \o Microsoft Windows 7 + \row \o Ubuntu Linux 10.04 (32-bit) + \o As provided by Ubuntu + \row \o Microsoft Windows 7 (32-bit) \o MSVC 2008 - \row \o Apple Mac OS X 10.6 "Snow Leopard" + \row \o Microsoft Windows 7 (64-bit) + \o MSVC 2010 SP1 + \row \o Apple Mac OS X 10.6 "Snow Leopard" (64-bit) \o As provided by Apple - \row \o Apple Mac OS X 10.5 "Leopard" x86_64 (Cocoa 32 and 64bit) + \row \o Apple Mac OS X 10.7 "Lion" (64-bit) \o As provided by Apple - \row \o Embedded Linux QWS (ARM) - \o gcc (\l{http://www.codesourcery.com/}{Codesourcery version)} - \row \o Windows CE 5.0 (ARMv4i, x86, MIPS) - \o MSVC 2005 WinCE 5.0 Standard (x86, pocket, smart, mipsii) - \row \o Maemo 5(Linux, ARM, X11) - \o gcc (\l{http://www.scratchbox.org/}{Scratchbox)} - \row \o MeeGo (Linux, ARM, X11) - \o gcc (\l{http://www.scratchbox.org/}{Scratchbox)} - \row \o Symbian (Symbian/S60 5.0) - \o RVCT 2.2 [build 686 or later], WINSCW 3.2.5 [build 482 or later], GCCE (for applications) \endtable \section1 Tier 2 Platforms @@ -779,47 +436,18 @@ \table \header \o Platform \o Compilers - \row \o Windows 7 - \o MSVC 2010 - \row \o Apple Mac OS X 10.4 "Tiger" (Carbon) - \o As provided by Apple - \row \o Apple Mac OS X 10.5 "Leopard" (Carbon) - \o As provided by Apple - \row \o HPUXi 11.23 - \o aCC 6.10 - \row \o Solaris 10 UltraSparc - \o Sun Studio 12 - \row \o AIX 6 - \o Power5 xlC 7 - \row \o Microsoft Windows XP - \o Intel Compiler - \row \o Linux - \o Intel Compiler - \row \o Embedded Linux QWS (Mips, PowerPC) - \o gcc (\l{http://www.codesourcery.com/}{Codesourcery version)} - \row \o Embedded Linux X11 (ARM) - \o gcc (\l{http://www.scratchbox.org/}{Scratchbox)} - \row \o Windows CE 5.0 (ARMv4i, x86, MIPS) - \o MSVC 2005 WinCE 5.0 Standard (x86, pocket, smart, mipsii) - \row \o Windows Embedded CE 6.0 (ARMv4i, x86, MIPS) - \o MSVC 2008 WinCE Embedded 6.0 Professional - \row \o Symbian (Symbian/S60 3.1, 3.2) - \o RVCT 2.2 [build 686 or later], WINSCW 3.2.5 [build 482 or later], GCCE (for applications) + \row \o Ubuntu Linux 10.04 QWS (x86 32-bit) + \o As provided by Ubuntu + \row \o Ubuntu Linux 10.04 (32-bit) + \o Intel Compiler [version 12] \endtable - \note The PPC architecture on Mac has been downgraded from tier 1 to tier 2 for 4.7. - \section1 Tier 3 Platforms (Not Supported by Nokia) All platforms not specifically listed above are not supported by Nokia. Nokia does not run its unit test suite or perform any other internal tests on platforms not listed above. - Even though some Tier 3 platforms are available under the Qt Commercial License, - technical support is not included in that license. - However, \l{How to Order}{contact our sales team} to find out about the - availability of other services for those platforms. - Qt users should note, however, that there may be various open source projects, community users and/or Qt partners who are able to provide assistance with platforms not supported by Nokia. @@ -832,13 +460,4 @@ warranties and conditions, either express or implied, including, but not limited to, implied warranties of merchantability, fitness for a particular purpose, title and non-infringement with regard to the Licensed Software. - - \section1 Planned Changes for Qt 4.8 - - The following changes to the list of supported platforms are at time of publishing - planned for Qt 4.8: - - \list - \o Plans not yet released - \endlist */ diff --git a/doc/src/qt-webpages.qdoc b/doc/src/qt-webpages.qdoc index 394850f..271fa18 100644 --- a/doc/src/qt-webpages.qdoc +++ b/doc/src/qt-webpages.qdoc @@ -117,10 +117,6 @@ \title Qt License Pricing */ /*! - \externalpage http://qt.nokia.com/about/contact-us - \title How to Order -*/ -/*! \externalpage http://doc.qt.nokia.com/supported-platforms.html \title Platform Support Policy */ -- cgit v0.12