2
|
1 |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
|
2 |
"http://www.w3.org/TR/html4/loose.dtd">
|
|
3 |
<html><head>
|
|
4 |
<title>Exporting project(s) to MMP/Bld.inf files in Tasks</title>
|
|
5 |
<link rel="StyleSheet" href="../../book.css" type="text/css"/>
|
|
6 |
</head>
|
|
7 |
<body>
|
|
8 |
|
|
9 |
<div class="step">
|
|
10 |
<h2>Exporting project(s) to MMP/Bld.inf files</h2>
|
|
11 |
<p>
|
|
12 |
The command-line Symbian OS toolchain requires a component description
|
|
13 |
file (<span class="code">Bld.Inf</span>) and one or more project definition files
|
|
14 |
(<span class="code">.mmp</span>) to build a project. The export command allows you to create
|
|
15 |
these files for your projects. </p>
|
|
16 |
<h4>
|
|
17 |
To export project(s) to a <span class="code">Bld.Inf</span> and/or <span class="code">MMP</span>
|
|
18 |
file: </h4>
|
|
19 |
<ol>
|
|
20 |
<li>
|
|
21 |
Click <span class="code">File > Export...</span> to get a list of the
|
|
22 |
available export wizards:
|
|
23 |
<p>
|
|
24 |
OR </p>
|
|
25 |
<p>
|
|
26 |
Click <span class="code">Export</span> from the pop-up menus of the
|
|
27 |
<span class="code">C/C++ Projects</span> and <span class="code">Navigator</span> views to get a
|
|
28 |
list of the available export wizards: </p>
|
|
29 |
<div class="Figure">
|
|
30 |
|
|
31 |
<p class="Image"><a name=""><img src="../images/export1.gif" alt="" width="470" height="550" border="0"></a></p>
|
|
32 |
</div>
|
|
33 |
</li>
|
|
34 |
<li>Select <span class="code">Symbian MMP/Bld.Inf</span> and click
|
|
35 |
<span class="code">Next</span> to go to the <span class="code">Symbian Projects</span> page:
|
|
36 |
</p>
|
|
37 |
<div class="Figure">
|
|
38 |
|
|
39 |
<p class="Image"><a name=""><img src="../images/export2.gif" alt="" width="470" height="550" border="0"></a></p>
|
|
40 |
</div>
|
|
41 |
</li>
|
|
42 |
<li>
|
|
43 |
Select the project(s) you intend to export from the list of
|
|
44 |
<span class="code">Symbian Projects</span>. </li>
|
|
45 |
<li>
|
|
46 |
Click <span class="code">Next</span> to go to the <span class="code">SDKs and Build Configurations Selection</span> page:
|
|
47 |
<div class="Figure">
|
|
48 |
|
|
49 |
<p class="Image"><a name=""><img src="../images/export3.gif" alt="" width="470" height="550" border="0"></a></p>
|
|
50 |
</div>
|
|
51 |
</li>
|
|
52 |
<li>
|
|
53 |
Select at least one build configuration for each project in the
|
|
54 |
left-hand pane from the list of available SDKs and build configurations in the
|
|
55 |
right-hand pane. By default, all the build configurations chosen during the
|
|
56 |
last export are selected. If a project is being exported for the first time, no
|
|
57 |
build configurations are selected.
|
|
58 |
<p>
|
|
59 |
The build configurations chosen for a project are distinguished using
|
|
60 |
guard macros in the <span class="code">MMP</span> file. The guard macros are placed around
|
|
61 |
the <span class="code">MMP</span> file statements containing resources or build setting,
|
|
62 |
only valid for a subset of the chosen build configurations. </p>
|
|
63 |
<p>
|
|
64 |
There are cases where guard macros may not be able to distinguish
|
|
65 |
between two build configurations. The export wizard shows a conflict when two
|
|
66 |
such ambiguous build configurations are selected by the user. </p>
|
|
67 |
<p>
|
|
68 |
The combination of build configurations which results in a conflict
|
|
69 |
are as follows: </p>
|
|
70 |
|
|
71 |
<ul>
|
|
72 |
<li>
|
|
73 |
<p>
|
|
74 |
Any two build configurations that differ only in the build
|
|
75 |
variant (UDEB/UREL). For example, "UIQ 3.0 Phone (GCCE) Debug" and "UIQ 3.0
|
|
76 |
Phone (GCCE) Release" configurations will result in a conflict, as they differ
|
|
77 |
only in the build variant. </p>
|
|
78 |
</li>
|
|
79 |
<li>
|
|
80 |
<p>
|
|
81 |
Any two build configurations, of which one is user-defined based
|
|
82 |
on the other using the <span class="code">Manage</span> option in the <span class="code">C/C++
|
|
83 |
Build properties</span> view of the project. </p>
|
|
84 |
<p>
|
|
85 |
<i>For more information on managing build configurations,
|
|
86 |
refer to the CDT user guide.</i> </p>
|
|
87 |
</li>
|
|
88 |
</ul>
|
|
89 |
|
|
90 |
<p>
|
|
91 |
The wizard will change the build settings in the <span class="code">MMP</span>
|
|
92 |
file based on the chosen build configuration. If more than one build
|
|
93 |
configuration which require different build settings are chosen, guard macros
|
|
94 |
are used to determine the build settings. For example, if you want to change
|
|
95 |
the <span class="code">SECUREID</span> option for all the <code>EKA2</span> build
|
|
96 |
configurations, the wizard will append the following lines into the
|
|
97 |
<span class="code">MMP</span> file: </p>
|
|
98 |
<p class="CodeBlock">#if def EKA2<br> SECUREID 0x00301<br>#endif</p>
|
|
99 |
<p>
|
|
100 |
Where <code>EKA2</span> is the guard macro for all the build
|
|
101 |
configurations designed for the EKA2 kernel. The above <span class="code">MMP</span> file
|
|
102 |
statements check whether the <code>EKA2</span> guard macro is defined, and if
|
|
103 |
it is, change the <code>SECUREID</span> option accordingly. </p>
|
|
104 |
</li>
|
|
105 |
<li>
|
|
106 |
Click <span class="code">Next</span> to go to the <span class="code">MMP File and Bld.inf
|
|
107 |
File</span> page:
|
|
108 |
<div class="Figure">
|
|
109 |
<div align="center"><a name=""><img src="../images/export4.gif" alt="" width="470" height="550" border="0"></a></div>
|
|
110 |
</div>
|
|
111 |
<ol type="a">
|
|
112 |
<li>
|
|
113 |
Type the <span class="code">MMP</span> file location in the <span class="code">MMP
|
|
114 |
File</span> field, or click <span class="code">Browse</span> to select the
|
|
115 |
<span class="code">MMP</span> file for each project listed above.
|
|
116 |
<p>
|
|
117 |
By default, the <span class="code">MMP</span> file is exported to one of the
|
|
118 |
following locations in the order listed below: </p>
|
|
119 |
<ul>
|
|
120 |
<li> The location where the project was exported the last time. </li>
|
|
121 |
<li> The group folder of the exported project, if it exists. </li>
|
|
122 |
<li> The exported project's root directory. </li>
|
|
123 |
</ul>
|
|
124 |
</li>
|
|
125 |
<li>
|
|
126 |
If you select the <span class="code">Export Bld.inf file</span> option, then
|
|
127 |
type the <span class="code">Bld.Inf</span> file location in the <span class="code">Bld.inf
|
|
128 |
File</span> field, or click <span class="code">Browse</span> to select the
|
|
129 |
<span class="code">Bld.Inf</span> file.
|
|
130 |
<p>
|
|
131 |
If you do not select the <span class="code">Export Bld.inf file</span> option,
|
|
132 |
then you need not specify the <span class="code">Bld.Inf</span> file location. </p>
|
|
133 |
<p>
|
|
134 |
By default, the <span class="code">Bld.Inf</span> file is exported to one of the
|
|
135 |
following locations in the order listed below: </p>
|
|
136 |
<ul>
|
|
137 |
<li>
|
|
138 |
The location where the <span class="code">Bld.Inf</span> was created when the
|
|
139 |
project was last exported to an <span class="code">MMP</span> file. </li>
|
|
140 |
<li> The <span class="code">MMP</span> file location.</li>
|
|
141 |
</ul>
|
|
142 |
</li>
|
|
143 |
</ol>
|
|
144 |
</li>
|
|
145 |
<li>Click Next to go to the Other Makefiles page where you can specify extra Makefiles to invoke from bld.inf </li>
|
|
146 |
|
|
147 |
<blockquote>
|
|
148 |
<p align="center"><img src="../images/export4a.gif" width="470" height="550"></p>
|
|
149 |
</blockquote>
|
|
150 |
<li>Click Next to open the Scalable Icon Makefiles page where you can specify the Makefiles used to generate scalable icon files.</li>
|
|
151 |
<p align="center"><img src="../images/export4b.gif" width="470" height="550"></p>
|
|
152 |
<li>Click <span class="code">Next</span> to go to the <span class="code">PRJ_EXPORTS</span> page, to specify the list of files to be copied from the source directories to
|
|
153 |
the releasables directories while building the project:
|
|
154 |
<div class="Figure">
|
|
155 |
|
|
156 |
<p class="Image"><a name=""><img src="../images/export5.gif" alt="" width="470" height="550" border="0"></a></p>
|
|
157 |
</div>
|
|
158 |
<p>
|
|
159 |
<i>Note that this page is displayed only if you have selected
|
|
160 |
the Export Bld.inf file option in the previous page.</i> </p>
|
|
161 |
</li>
|
|
162 |
<li>
|
|
163 |
Type the <span class="code">Source</span> and <span class="code">Target</span>
|
|
164 |
locations of the file to be copied, and click <span class="code">Add</span> to append
|
|
165 |
the source-target pair to the <span class="code">PRJ_EXPORTS</span> list. You can use
|
|
166 |
<span class="code">Browse</span> to specify the source file and its target location. If
|
|
167 |
the target location for the file is not specified, it will be copied to
|
|
168 |
<span class="code">epoc32\include</span> directory.
|
|
169 |
<p>
|
|
170 |
Note that the contents of the <span class="code">PRJ_EXPORTS</span> list is
|
|
171 |
exactly the same as it appears in the <code>PRJ_EXPORTS</span> section of the
|
|
172 |
<span class="code">Bld.Inf</span> file. </p>
|
|
173 |
</li>
|
|
174 |
<li>
|
|
175 |
If you want to modify or delete any entry from the
|
|
176 |
<span class="code">PRJ_EXPORTS</span> list, select the entry and click
|
|
177 |
<span class="code">Modify</span> or <span class="code">Delete</span>. </li>
|
|
178 |
<li>
|
|
179 |
Click <span class="code">Next</span> to go to the <span class="code">MMP Preview</span>
|
|
180 |
page:
|
|
181 |
<div class="Figure">
|
|
182 |
|
|
183 |
<p class="Image"><a name=""><img src="../images/export6.gif" alt="" width="470" height="550" border="0"></a></p>
|
|
184 |
</div>
|
|
185 |
</li>
|
|
186 |
<li>
|
|
187 |
Select a project from the list of projects to be exported, to see a
|
|
188 |
preview of the <span class="code">MMP</span> file in the pane below. You can edit the
|
|
189 |
contents if required. </li>
|
|
190 |
<li>
|
|
191 |
Click <span class="code">Finish</span> to complete the export process. The
|
|
192 |
wizard will create the managed <span class="code">MMP</span> file and <code class="filename">Bld.inf</span>
|
|
193 |
file in their specified locations.
|
|
194 |
<p>
|
|
195 |
A managed <span class="code">MMP</span> file contains the same content as a
|
|
196 |
standard <span class="code">MMP</span> file would, but the contents are organised into
|
|
197 |
following managed sections using special tags: </p>
|
|
198 |
|
|
199 |
<ul>
|
|
200 |
<li>
|
|
201 |
<p>
|
|
202 |
Binary Build Information </p>
|
|
203 |
</li>
|
|
204 |
<li>
|
|
205 |
<p>
|
|
206 |
Search Path </p>
|
|
207 |
</li>
|
|
208 |
<li>
|
|
209 |
<p>
|
|
210 |
Project Content Managed </p>
|
|
211 |
</li>
|
|
212 |
<li>
|
|
213 |
<p>
|
|
214 |
Linkage </p>
|
|
215 |
</li>
|
|
216 |
<li>
|
|
217 |
<p>
|
|
218 |
Customization </p>
|
|
219 |
</li>
|
|
220 |
</ul>
|
|
221 |
|
|
222 |
<p>
|
|
223 |
You will be notified in case of any errors during the updated
|
|
224 |
process, which results in not creating the <span class="code">MMP</span> or
|
|
225 |
<span class="code">Bld.Inf</span> files.</p>
|
|
226 |
</li>
|
|
227 |
</ol>
|
|
228 |
</div>
|
|
229 |
<p>
|
|
230 |
The following <span class="code">MMP</span> file generated by the wizard, shows how
|
|
231 |
its content is organised using managed sections: </p>
|
|
232 |
<h4 class="listing">// HelloCarbide.mmp</h4>
|
|
233 |
<p class="listing">/*& START_BINARY_BUILD &*/<br>
|
|
234 |
// NOTE Content in this section is auto-generated, any changes are overwritten in the next update process.<br>
|
|
235 |
CAPABILITY READUSERDATA<br>
|
|
236 |
TARGET HelloCarbide.exe<br>
|
|
237 |
TARGETTYPE exe<br>
|
|
238 |
UID 0x00000000 0xe4d95f85<br>
|
|
239 |
VENDORID 0x00000000<br>
|
|
240 |
SECUREID 0xE4D95F85<br>
|
|
241 |
/*& END_BINARY_BUILD &*/</p>
|
|
242 |
<p class="listing">/*& START_SEARCH_PATHS &*/<br>
|
|
243 |
// NOTE Content in this section is auto-generated, any changes are overwritten in the next update process.<br>
|
|
244 |
SYSTEMINCLUDE \epoc32\include \epoc32\include\variant \epoc32\include\oem<br>
|
|
245 |
USERINCLUDE ..\inc ..\data<br>
|
|
246 |
/*& END_SEARCH_PATHS &*/</p>
|
|
247 |
<p class="listing">/*& START_PROJECT_CONTENT &*/<br>
|
|
248 |
// NOTE Content in this section is auto-generated, any changes are overwritten in the next update process.<br>
|
|
249 |
SOURCEPATH ..\data<br>
|
|
250 |
START RESOURCE HelloCarbide.rss<br>
|
|
251 |
TARGETPATH resource\apps<br>
|
|
252 |
HEADER<br>
|
|
253 |
END<br>
|
|
254 |
START RESOURCE HelloCarbide_reg.rss<br>
|
|
255 |
TARGETPATH private\10003a3f\apps<br>
|
|
256 |
HEADER<br>
|
|
257 |
END<br>
|
|
258 |
SOURCEPATH ..\src<br>
|
|
259 |
SOURCE Waving.cpp HelloCarbideDocument.cpp HelloCarbideApplication.cpp<br>
|
|
260 |
SOURCE HelloCarbideAppView.cpp HelloCarbideAppUi.cpp HelloCarbide.cpp<br>
|
|
261 |
/*& END_PROJECT_CONTENT &*/</p>
|
|
262 |
<p class="listing">/*& START_LINKAGE_INFORMATION &*/<br>
|
|
263 |
// NOTE Content in this section is auto-generated, any changes are overwritten in the next update process.<br>
|
|
264 |
LIBRARY euser.lib apparc.lib cone.lib eikcore.lib avkon.lib commonengine.lib<br>
|
|
265 |
LIBRARY efsrv.lib estor.lib<br>
|
|
266 |
/*& END_LINKAGE_INFORMATION &*/</p>
|
|
267 |
<div id="footer">Copyright © 2009 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. <br>License: <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a></div>
|
|
268 |
|
|
269 |
</body>
|
|
270 |
</html>
|
|
271 |
|