diff options
Diffstat (limited to 'doc/src/deployment/deployment.qdoc')
-rw-r--r-- | doc/src/deployment/deployment.qdoc | 102 |
1 files changed, 98 insertions, 4 deletions
diff --git a/doc/src/deployment/deployment.qdoc b/doc/src/deployment/deployment.qdoc index b5b1b9c..ea841f9 100644 --- a/doc/src/deployment/deployment.qdoc +++ b/doc/src/deployment/deployment.qdoc @@ -187,6 +187,7 @@ \o \l{Deploying an Application on Windows}{Qt for Windows} \o \l{Deploying an Application on Mac OS X}{Qt for Mac OS X} \o \l{Deploying Qt for Embedded Linux Applications}{Qt for Embedded Linux} + \o \l{Deploying an Application on the Symbian platform}{Qt for the Symbian platform} \endlist \sa Installation {Platform-Specific Documentation} @@ -1492,8 +1493,101 @@ macdeployqt supports the following options: \list - \o -no-plugins: Skip plugin deployment - \o -dmg : Create a .dmg disk image - \o -no-strip : Don't run 'strip' on the binaries - \endlist + \o -no-plugins: Skip plugin deployment + \o -dmg : Create a .dmg disk image + \o -no-strip : Don't run 'strip' on the binaries + \endlist +*/ + +/*! + \page deployment-symbian.html + \contentspage Deploying Qt Applications + + \title Deploying an Application on the Symbian platform + + Applications are deployed to Symbian devices in signed \c .sis package files. + The \c .sis file content is controlled with \c .pkg files. The \c .pkg file contains a set + of instructions used by tools to produce a \c .sis file. \c qmake generates a + default \c .pkg file for your project. The \c .pkg file generated by \c qmake is typically + fully functional for testing purposes but when planning to deliver your application + to end-users some changes are needed. This document describes what changes are + typically needed and how to implement them. + + \section1 Static Linking + + Qt for the Symbian platform does currently not support static linking of + Qt libraries. + + \section1 Shared Libraries + + When deploying the application using the shared libraries approach we must ensure that the + Qt runtime is correctly redistributed along with the application executable, + and also that all Qt dependencies are redistributed along with the application. + + We will demonstrate these procedures in terms of deploying the \l {widgets/wiggly}{Wiggly} + application that is provided in Qt's examples directory. + + \section2 Building Qt as a Shared Library + + We assume that you already have installed Qt as a shared library, + in the \c C:\path\to\Qt directory which is the default when installing Qt for Symbian. + For more information on how to build Qt, see the \l {Installation} documentation. + + \section1 Shared Libraries + + After ensuring that Qt is built as a shared library, we can build + the \l {widgets/wiggly}{Wiggly} application. First, we + must go into the directory that contains the application: + + \snippet doc/src/snippets/code/doc_src_deployment.qdoc 55 + + To prepare the application for deployment we must ensure that the \c .pkg file generated by + \c qmake contains the relevant vendor information and embeds the necessary + dependencies to the application deployment file (\c .sis). The content of the generated \c .pkg + file can be controlled with the Symbian specific \c qmake \l DEPLOYMENT keyword extensions. + + First, we will change the vendor statement to something more meaningful. The application + vendor is visible to end-user during the installation. + + \snippet doc/src/snippets/code/doc_src_deployment.qdoc 56 + + Second we will tell the Symbian application installer that this application supports + only S60 5.0 based devices: + + \snippet doc/src/snippets/code/doc_src_deployment.qdoc 57 + + You can find a list of platform and device indentification codes from + \l {http://wiki.forum.nokia.com/index.php/S60_Platform_and_device_identification_codes}{Forum Nokia Wiki}. + By default \c .pkg file generated by \c qmake adds support for all + S60 3rd edition FP1, S60 3rd edition FP2 and S60 5th edition devices. + + As a last step we will embed the Open C, Open C++ and Qt \c .sis files to the Wiggly + deployment file: + + \snippet doc/src/snippets/code/doc_src_deployment.qdoc 58 + + By embedding all dependencies to the application deployment file, the + end-user does not need to download and install all dependencies separately. + The drawback of \c .sis embedding is that the application \c .sis file size becomes + big. To address these problems Forum Nokia is planning to release a smart installer + which will take care of downloading and installing the necessary dependencies + over-the-air. The expected availability of smart installer is 1Q 2010. + + Now we are ready to compile the application and create the application + deployment file. Run \c qmake to create Symbian specific makefiles, resources (\.rss) + and deployment packaging files (\c .pkg). And do build to create the + application binaries and resources. + + \snippet doc/src/snippets/code/doc_src_deployment.qdoc 59 + + If everything compiled and linked without any errors, we are now ready to create + an application installation file: + + \snippet doc/src/snippets/code/doc_src_deployment.qdoc 60 + + If all binaries and dependencies were found, we should now have a self-signed + \c wiggly_release-gcce.sis ready to be installed on a device. For more information + about creating a \c .sis file and installing it to device see also + \l {The Symbian platform - Introduction to Qt#Installing your own applications}{here}. + */ |