summaryrefslogtreecommitdiffstats
path: root/doc/src/s60-introduction.qdoc
blob: d0a19768317ee07cf17861056029575077afcb6d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
/****************************************************************************
**
** Copyright (C) 2009 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:LGPL$
** No Commercial Usage
** This file contains pre-release code and may not be distributed.
** You may use this file in accordance with the terms and conditions
** contained in the Technology Preview License Agreement accompanying
** this package.
**
** GNU Lesser General Public License Usage
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 as published by the Free Software
** Foundation and appearing in the file LICENSE.LGPL included in the
** packaging of this file.  Please review the following information to
** ensure the GNU Lesser General Public License version 2.1 requirements
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** In addition, as a special exception, Nokia gives you certain additional
** rights.  These rights are described in the Nokia Qt LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** If you have questions regarding the use of this file, please contact
** Nokia at qt-info@nokia.com.
**
**
**
**
**
**
**
**
** $QT_END_LICENSE$
**
****************************************************************************/

/*!
    \page s60-with-qt-introduction.html

    \title S60 - Introduction to using Qt
    \brief An introduction to Qt for S60 developers.
    \ingroup howto
    \ingroup qts60

    \tableofcontents

    \section1 Required tools
    
    See \l{Qt for S60 Requirements} to see what tools are required to use Qt for S60.

    \section1 Installing Qt and running demos
    
    Follow the instructions found in \l{Installing Qt on S60 using binary package} to learn how
    to install Qt using binary package and how to build and run Qt demos.

    Follow the instructions found in \l{Installing Qt on S60} to learn how to install Qt using
    using source package and how to build and run the Qt demos.

    \section1 Building your own applications

    If you are new to Qt development, have a look at \l{How to Learn Qt}. 
    In general, the difference between developing a
    Qt application on S60 compared to any of the other platforms supported
    by Qt is not that big.

    Once you have crated a \c .pro file for your project, generate the
    Carbide specific \c Bld.inf and \c .mmp files this way:

    \snippet doc/src/snippets/code/doc_src_s60-introduction.qdoc 0

    For more information on how to use qmake have a look at the \l
    {qmake Tutorial}.

    Now you can build the Qt on S60 application with standard build
    tools. By default, running \c make will produce binaries for the
    emulator. However, S60 comes with several alternative build targets,
    as shown in the table below:

    \table
    \row \o \c debug-winscw  \o Build debug binaries for the emulator (default).
                                It is currently not possible to build release
                                binaries for the emulator.
    \row \o \c debug-gcce    \o Build debug binaries for hardware using GCCE.
    \row \o \c release-gcce  \o Build release binaries for hardware using GCCE.
    \row \o \c debug-armv5   \o Build debug binaries for hardware using RVCT.
    \row \o \c release-armv5 \o Build release binaries for hardware using RVCT.
    \row \o \c run           \o Run the emulator binaries from the build directory.
    \row \o \c sis           \o Create signed \c .sis file for project.
    \endtable

    The following lines perform a debug build for the emulator
    and deploy all the needed files:

    \snippet doc/src/snippets/code/doc_src_s60-introduction.qdoc 1

    To work on your project in Carbide, simply import the \c .pro file
    by right clicking on the project explorer and executing "Import...".

    \section1 Installing your own applications

    To install your own applications on hardware, you need signed \c .sis file.
    The signed \c .sis file can be created with \c make \c sis target. \c sis target
    is only supported for executables or projects with \c DEPLOYMENT statements.
    By default the \c sis target will create signed \c .sis file for last build
    target. For example, the following sequence will generate the needed makefiles, 
    build the project for \c debug-winscw and \c release-armv5, and create 
    self-signed \c .sis file for \c release-armv5 target:
    
    \snippet doc/src/snippets/code/doc_src_s60-introduction.qdoc 2

    If you want to use different certificate information or override the default
    target for \c .sis file creation you can use the environment variables as 
    shown in the table below:
    
    \table
    \row \o \c QT_SIS_OPTIONS      \o Options accepted by \c .sis creation. 
                                       -i, install the package right away using PC suite.
                                       -c=<file>, read certificate information from a file.
                                       Execute \c{perl createpackage.pl} for more information
                                       about options.
                                       By default no otions are given.
    \row \o \c QT_SIS_TARGET       \o Target for which \c .sis file is created.
                                       Accepted values are build targets listed in 
                                       previous table. By default last build target.
    \row \o \c QT_SIS_CERTIFICATE  \o The certificate file used for signing.
                                       By default self-signed certificate. 
    \row \o \c QT_SIS_KEY          \o The certificate's private key file.
                                       By default key is associated to self-signed certificate. 
    \row \o \c QT_SIS_PASSPHRASE   \o The certificate's private key file's passphrase.
                                       By default empty. 
    \endtable    
    
    For example:
    
    \snippet doc/src/snippets/code/doc_src_s60-introduction.qdoc 4        

    The environment variables for \c make can also be given as parameters:
    
    \snippet doc/src/snippets/code/doc_src_s60-introduction.qdoc 3        
    
    If you want to install the program immediately, make sure that the device
    is connected to the computer in "PC Suite" mode, and run \c sis target
    with the \c QT_SIS_OPTIONS=-i, like this:

    \snippet doc/src/snippets/code/doc_src_s60-introduction.qdoc 5
*/