1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-29 19:45:01 +02:00
cdt/doc/org.eclipse.cdt.doc.user/concepts/cdt_c_projects.htm

119 lines
No EOL
4.6 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>CDT projects</title>
<link rel="stylesheet" type="text/css" href="../help.css">
</head>
<body>
<h1>CDT projects</h1>
<p>Before you can work in the CDT, you must create a project to store your
source code, makefiles, binaries, and related files. C/C++ projects are displayed
in the C/C++ Projects view.</p>
<p><b>Tip:</b> Nested projects are not supported. Each project must be organized as a
discrete entity. Project dependencies are supported by allowing a project
to reference other projects that reside in your workspace. For more information,
see <a href="../tasks/cdt_t_proj_ref.htm">Selecting referenced projects</a>.</p>
<p>For more information about projects and where they are stored, see:</p>
<ul>
<li> <b>Workbench User Guide &gt; Tasks &gt; Resources</b></li>
<li> <b>Workbench User Guide &gt; Tasks &gt; Running Eclipse</b></li>
</ul>
<h2>Project types</h2>
<p>You can create a standard make C or C++ project or a managed make C or C++
project.</p>
<h3>Standard make C or C++ project</h3>
<p>You need to create a makefile in order to build your project or use an
existing makefile.</p>
<h3>Managed make C or C++ project</h3>
<p>A managed make project generates the makefile for you automatically. In addition, the
files module.dep and module.mk are created for every project sub-directory.
These files are required for your managed make projects to build successfully.</p>
<h3>How the CDT associates project natures</h3>
<p>Projects are assigned natures and tags that identify the
properties of each project. The CDT uses natures to identify what can and cannot be done with each project. The
CDT also uses natures to filter projects that are contextually
irrelevant; for example, non-library projects from a list of library projects.</p>
<table border="1" cellpadding="5" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="56%">
<tr>
<th align="left" width="63%">Project</td>
<th align="left" width="37%">Associated natures</td>
</tr>
<tr>
<td width="63%">Standard Make C Project</td>
<td width="37%">C, make</td>
</tr>
<tr>
<td width="63%">Managed Make C Project</td>
<td width="37%">C, gen make</td>
</tr>
<tr>
<td width="63%">Standard Make C++ Project</td>
<td width="37%">C, C++</td>
</tr>
<tr>
<td width="63%">Managed Make C++ Project</td>
<td width="37%">C, C++</td>
</tr>
</table>
<h2>Project conversion</h2>
<p>You can convert projects can be converted from C to C++ (or from C++ to C). If, for
example, your requirements change and you must convert an existing C project to C++,
you can do this without recreating the project. The CDT converts your project files and
resolves any source control issues.</p>
<h2>A few notes about projects</h2>
<ul>
<li>When you create a file within a project, a record (local history) of
every change is created. For more information about local history, see
<b>Workbench User Guide &gt; Reference &gt; User interface
information &gt; Development environment &gt; Local history</b>.</li>
<li>Spaces in projects and filenames can cause problems with some
tools, such as the make utility or the compiler.</li>
<li>Be careful when you use only case to distinguish files and projects. UNIX-based
operating system file names are case sensitive, but Windows filenames are not. Therefore, Hello.c and
hello.c are separate files in UNIX but overwrite each other in Windows.</li>
</ul>
<p>For more information about projects, see <b>Workbench User Guide &gt; Concepts &gt; Workbench &gt; Resources</b>.</p>
<p><img border="0" src="../images/ngconcepts.gif" ALT="Related concepts" width="143" height="21">
<br>
<a href="cdt_c_proj_file_views.htm">Project file views</a><br>
<a href="../getting_started/cdt_w_existing_code.htm">How to bring C/C++ source into Eclipse</a></p>
<p><img border="0" src="../images/ngtasks.gif" ALT="Related tasks" width="143" height="21">
<br>
<a href="../tasks/cdt_o_proj_prop.htm">Defining project properties</a><br>
<a href="../tasks/cdt_o_proj_files.htm">Working with C/C++ project files</a></p>
<p><img border="0" src="../images/ngref.gif" ALT="Related reference" width="143" height="21">
<br>
<a href="../reference/cdt_o_proj_prop_pages.htm">Project properties</a><br>
<a href="../reference/cdt_o_views.htm">Views</a></p>
<img src="../images/ng03_04.gif" ALT="IBM Copyright Statement" BORDER=0 width="324" height="14">
</body>
</html>