author | fturovic <frank.turovich@nokia.com> |
Thu, 18 Feb 2010 11:17:02 -0600 | |
branch | RCL_2_4 |
changeset 987 | 77469bd2d10b |
parent 917 | e698bb75bbab |
permissions | -rw-r--r-- |
917
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
1 |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
2 |
<html> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
3 |
<head> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
4 |
<title>Creating New Projects</title> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
5 |
<link rel="StyleSheet" href="../../book.css" type="text/css"/> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
6 |
</head> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
7 |
<body> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
8 |
<h2>Creating New Projects</h2> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
9 |
<div class="Bodytext"> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
10 |
<p>New projects are created using the <b>New Project Wizard</b>. Carbide includes a number of templates that make creating projects for different SDKs and executables quick and easy.</p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
11 |
<p class="note"><b>NOTE</b> You must have at least one recognized SDK installed before you can create a project. See the <a href="../reference/SDKPreferences.html">SDK Preferences panel</a> to determine if the installed SDKs are recognized by Carbide.c++ IDE. If the SDK you have is not recognized, you may still be able to <a href="sdks/sdk_add.htm">add</a> it to the Discovered Symbian OS SDK list.</p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
12 |
<p class="note"><b>NOTE</b> When creating or importing projects the sources and SDK must be on the same drive. This is due to many of the internal SDK tools using an implicit working drive to calculate paths (e.g. \epoc32\tools). Avoid spaces in SDK paths since this will also cause problems.</p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
13 |
<div class="step"> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
14 |
<h3>Creating New Symbian OS C++ Projects</h3> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
15 |
<ol> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
16 |
<li class="step">Select <b>File > New > Symbian OS C++ Project</b> to invoke the <b>New Project</b> wizard.</span></li> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
17 |
<p><img src="../images/step1.png" width="546" height="142" alt="" ></p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
18 |
<li>The <b class="step">New Symbian OS C++ Project</b> wizard appears. Select a template related to an installed SDK.</li> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
19 |
<p>A project template provides the initial source files and project settings appropriate for the chosen project type. A brief description of each template appears below the list. The project type determines the type of program that you are writing.</p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
20 |
<p class="note"><b>NOTE</b> If the selected template requires user input, additional wizard pages will collect data from the user before creating the project.</p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
21 |
<p>Checkmark the <b>Filter templates based on enabled SDKs</b> option to only list SDKs enabled in the <a href="../reference/SDKPreferences.html">SDK Preferences</a> panel. Uncheck this option to list SDKs that can be used with Carbide. Click <b>Next</b>.</p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
22 |
<p align="center"><img src="../images/step2.png" width="500" height="567" alt="" ></p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
23 |
<li>Enter a name for your project. </li> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
24 |
<p>Checkmark the <b>Use default location</b> option to save the project in the current workspace by default or uncheck it to save to another location. Enter the path in the <b>Location</b> field or click <b>Browse</b> button to locate the directory. Click <b>Next</b>.</p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
25 |
<p align="center"><span class="Image"><img src="images/new_proj_name_location.png" alt="new project" width="500" height="567"></span><span class="Image"><br> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
26 |
</span></p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
27 |
<li>Select the <b>SDKs and Build Configurations</b>. </li> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
28 |
<p>Checkmark the <b>Filter SDKs based on selected template</b> option to only show build configurations based on the selected SDK template, or uncheck to show all enabled SDKs and their related build configurations.</p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
29 |
<p align="center"><img src="../images/step4.png" width="500" height="567" alt="" ></p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
30 |
<p class="Image">The Symbian OS SDKs wizard page shows a tree of the SDKs and the type of builds available within that SDK. Select a single SDK |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
31 |
if the program you are developing is for just one version of a platform, |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
32 |
or select multiple SDKs to build the program for multiple build platforms or SDK versions.</p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
33 |
<p> The build configuration allows you to specify the compiler(s) to |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
34 |
do the build, and whether debug and/or release builds are required. For this example we recommend using the Emulator Debug version as the <a href="../concepts/build_configurations.htm">build configuration</a>. Later, you can <a href="projects/prj_set_build_tgt.htm">switch</a> to another build configuration to create the project for a specific device.</p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
35 |
<p> Click <b>Next</b>.</p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
36 |
<li>Set the project properties in the <b>Basic Settings</b> page. </li> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
37 |
<div align="center"><img src="../images/step5.png" width="500" height="567" alt="" > </div> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
38 |
<blockquote> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
39 |
<p align="left" class="note"><b>NOTE</b> The basic properties for a project may change based on the template selected for a particular project type. </p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
40 |
<p align="left" style="font-weight: normal;">Fill in the applicable fields, which |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
41 |
may include UID2, UID3, Vendor ID, Author, Support Email, Copyright |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
42 |
notice and Target Type for console EXEs.</p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
43 |
|
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
44 |
<p>Application UID (or UID3) is used to uniquely identify the binary (EXE or DLL) within the system. The purpose of UID 3 is to prevent one executable from interfering the operation of another executable.</p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
45 |
<p> A Vendor ID (VID) is a unique identifier for the organization that is supplying the program. In versions of Symbian OS with platform security, a program can read a VID at runtime to check that a binary comes from a particular source. In most cases, the VID should be zero, meaning that source of the executable is not required for any security checks.</p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
46 |
<p style="font-weight: normal;">UID 2 is a unique identifier number that identifies the type of interface that the |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
47 |
project implements. The values are defined by Symbian</p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
48 |
|
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
49 |
<ul> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
50 |
<li>For GUI applications, it is always 0x100039CE</li> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
51 |
<li>For static interface DLLs, the UID 2 is always 0x1000008d</li> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
52 |
<li>For polymorphic DLLs, the UID2 is defined by the framework which is being implemented</li> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
53 |
</ul> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
54 |
Author, Copyright notice, and Text to be shown are used in comments created by the wizard in the source code. |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
55 |
<p><span style="font-weight: normal;"> For more information on UIDs |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
56 |
and Vendor IDs, see </span><a |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
57 |
href="https://www.symbiansigned.com/app/page/uidfaq" |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
58 |
style="font-weight: normal;">Symbian Signed</a>, |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
59 |
<span style="font-weight: normal;">which allocates these values.</span> </p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
60 |
</blockquote> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
61 |
<li span style="font-weight: normal;"> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
62 |
Click <b>Next</b> to move to the <b>Project Directories</b> page.</li> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
63 |
<div class="Figure"> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
64 |
<p align="center" class="Image"><img src="../images/step6.png" width="500" height="567" alt="" ><br> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
65 |
</p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
66 |
<p class="note" style="font-weight: normal;"> <b>NOTE</b> The project directories depends on the selected template. That is, the directories required to store project data may |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
67 |
change based on the template used. </p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
68 |
</div> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
69 |
<p>Accept the defaults or enter the names for Include and Source folders to be created under the project root directory. Generated files will be copied to these directories.</p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
70 |
<li> Click <b>Finish</b> to create the project.</li> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
71 |
<p>This generates the necessary files for the project based on the template selected and show them in the <a href="../reference/view_cpp_projects.htm">Project Explorer</a> view.</p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
72 |
</ol> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
73 |
<blockquote> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
74 |
<p align="center"><img src="../images/step7.png" width="277" height="339" alt="" > </p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
75 |
</blockquote> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
76 |
</div> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
77 |
<blockquote> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
78 |
<p class="note"><b>NOTE</b> If the Carbide.c++ perspective is not visible, select the <b>Window |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
79 |
> Open Perspective > Other</b>... command to list all available |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
80 |
perspectives, then select the Carbide.c++ perspective and click OK.</p> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
81 |
</blockquote> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
82 |
</div> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
83 |
<h5>Concepts</h5> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
84 |
<ul> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
85 |
<li><a href="../concepts/Projects.html">Projects</a> </li> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
86 |
<li><a href="../concepts/Modify.html">Project Resources</a></li> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
87 |
<li><a href="../reference/ProjectPreferences.html">Project Preferences</a></li> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
88 |
<li><a href="../reference/ProjectTypeandSDK.html">Project Types</a></li> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
89 |
<li><a href="../concepts/templates.htm">Project Templates</a> </li> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
90 |
</ul> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
91 |
<h5>Tasks</h5> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
92 |
<ul> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
93 |
<li><a href="projects/prj_build.htm">Building Projects</a></li> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
94 |
<li><a href="projects/prj_debug_config.htm">Creating a Launch Configuration</a></li> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
95 |
<li><a href="start/carbide_debugging.htm">Debugging a Symbian OS Program</a> </li> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
96 |
</ul> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
97 |
|
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
98 |
<div id="footer">Copyright © 2010 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> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
99 |
|
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
100 |
</body> |
e698bb75bbab
updated creating new projects example
fturovic <frank.turovich@nokia.com>
parents:
0
diff
changeset
|
101 |
</html> |