Add CDT Standalone Debugger
- add org.eclipse.cdt.debug.application plugin which supports running CDT debugger as Eclipse application - add org.eclipse.cdt.debug.application.docs plugin which is the modified CDT docs - add org.eclipse.cdt.debug.standalone-feature which bundles the two aforementioned plugins - add org.eclipse.cdt.debug.standlone.source-feature Change-Id: I1a1ae855ab3912e678b7d9e3465e2fbbfe949e13 Reviewed-on: https://git.eclipse.org/r/25845 Reviewed-by: Jeff Johnston <jjohnstn@redhat.com> Tested-by: Jeff Johnston <jjohnstn@redhat.com>
22
debug/org.eclipse.cdt.debug.application.doc/.project
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<projectDescription>
|
||||||
|
<name>org.eclipse.cdt.debug.application.doc</name>
|
||||||
|
<comment></comment>
|
||||||
|
<projects>
|
||||||
|
</projects>
|
||||||
|
<buildSpec>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.pde.ManifestBuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.pde.SchemaBuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
</buildSpec>
|
||||||
|
<natures>
|
||||||
|
<nature>org.eclipse.pde.PluginNature</nature>
|
||||||
|
</natures>
|
||||||
|
</projectDescription>
|
|
@ -0,0 +1,7 @@
|
||||||
|
Manifest-Version: 1.0
|
||||||
|
Bundle-ManifestVersion: 2
|
||||||
|
Bundle-Name: %bundleName
|
||||||
|
Bundle-SymbolicName: org.eclipse.cdt.debug.application.doc;singleton:=true
|
||||||
|
Bundle-Version: 1.0.0.qualifier
|
||||||
|
Bundle-Vendor: %provider
|
||||||
|
Bundle-Localization: plugin
|
29
debug/org.eclipse.cdt.debug.application.doc/about.html
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
|
||||||
|
<title>About</title>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body lang="EN-US">
|
||||||
|
<div role="main">
|
||||||
|
<h1>About This Content</h1>
|
||||||
|
|
||||||
|
<p>June 22, 2007</p>
|
||||||
|
<h2>License</h2>
|
||||||
|
|
||||||
|
<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
|
||||||
|
indicated below, the Content is provided to you under the terms and conditions of the
|
||||||
|
Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
|
||||||
|
at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
|
||||||
|
For purposes of the EPL, "Program" will mean the Content.</p>
|
||||||
|
|
||||||
|
<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
|
||||||
|
being redistributed by another party ("Redistributor") and different terms and conditions may
|
||||||
|
apply to your use of any object code in the Content. Check the Redistributor's license that was
|
||||||
|
provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
|
||||||
|
indicated below, the terms and conditions of the EPL still apply to any source code in the Content
|
||||||
|
and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
61
debug/org.eclipse.cdt.debug.application.doc/book.css
Normal file
|
@ -0,0 +1,61 @@
|
||||||
|
/* following font face declarations need to be removed for DBCS */
|
||||||
|
|
||||||
|
|
||||||
|
body, h1, h2, h3, h4, p, table, td, caption, th, ul, ol, dl, li, dd, dt {font-family: Arial, sans-serif; color: #000000}
|
||||||
|
pre { font-family: Courier, monospace}
|
||||||
|
|
||||||
|
/* end font face declarations */
|
||||||
|
|
||||||
|
/* following font size declarations should be OK for DBCS */
|
||||||
|
body, h1, h2, h3, h4, p, table, td, caption, th, ul, ol, dl, li, dd, dt {font-size: 12pt; }
|
||||||
|
pre { font-size: 12pt}
|
||||||
|
|
||||||
|
/* end font size declarations */
|
||||||
|
|
||||||
|
body { background: #FFFFFF}
|
||||||
|
h1 { font-size: 18pt; margin-top: 5; margin-bottom: 1 }
|
||||||
|
h2 { font-size: 14pt; margin-top: 25; margin-bottom: 3 }
|
||||||
|
h3 { font-size: 12pt; margin-top: 20; margin-bottom: 3 }
|
||||||
|
h4 { font-size: 10pt; margin-top: 20; margin-bottom: 3; font-style: italic }
|
||||||
|
p { font-size: 12pt; }
|
||||||
|
pre { margin-left: 6; font-size: 9pt }
|
||||||
|
|
||||||
|
a:link { color: #006699 }
|
||||||
|
a:visited { color: #996699 }
|
||||||
|
a:hover { color: #006699 }
|
||||||
|
|
||||||
|
ul { margin-top: 0; margin-bottom: 10 }
|
||||||
|
li { margin-top: 0; margin-bottom: 0 }
|
||||||
|
li p { margin-top: 0; margin-bottom: 0 }
|
||||||
|
ol { margin-top: 0; margin-bottom: 10 }
|
||||||
|
dl { margin-top: 0; margin-bottom: 10 }
|
||||||
|
dt { margin-top: 0; margin-bottom: 0; font-weight: bold }
|
||||||
|
dd { margin-top: 0; margin-bottom: 0 }
|
||||||
|
strong { font-weight: bold}
|
||||||
|
em { font-style: italic}
|
||||||
|
var { font-style: italic}
|
||||||
|
div.revision { border-left-style: solid; border-left-width: thin;
|
||||||
|
border-left-color: #7B68EE; padding-left:5 }
|
||||||
|
th { font-weight: bold }
|
||||||
|
|
||||||
|
.title {
|
||||||
|
font-size: 20px; font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Mike Behm's addition to the style sheet */
|
||||||
|
.userinput { font-family: monospace; }
|
||||||
|
.guitab, .important, .guibutton, .selectblue, .guimenu, .guilabel,
|
||||||
|
.notetitle {
|
||||||
|
color: #000000;
|
||||||
|
font-family: helvetica, arial, sans-serif;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
div.linux {display:none;}
|
||||||
|
.firsterm {font-style:italic;}
|
||||||
|
|
||||||
|
.typewriter {font-family:monospace;}
|
||||||
|
.bold {font-weight:600;}
|
||||||
|
.linethrough {text-decoration: line-through;}
|
||||||
|
.underline {text-decoration: underline;}
|
||||||
|
|
14
debug/org.eclipse.cdt.debug.application.doc/build.properties
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
bin.includes = plugin.xml,\
|
||||||
|
META-INF/,\
|
||||||
|
html/,\
|
||||||
|
images/,\
|
||||||
|
reference/,\
|
||||||
|
concepts/,\
|
||||||
|
book.css,\
|
||||||
|
notices.html,\
|
||||||
|
tasks/,\
|
||||||
|
about.html,\
|
||||||
|
pom.xml,\
|
||||||
|
testToc.xml,\
|
||||||
|
toc.xml,\
|
||||||
|
index/
|
|
@ -0,0 +1,71 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<title>Before you begin</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Before you begin</h1>
|
||||||
|
|
||||||
|
<p>Depending on how you obtained the Stand-alone Debugger, you might have also received
|
||||||
|
a toolchain.
|
||||||
|
However, if you downloaded the Stand-alone Debugger from the Eclipse web site, then you will require a toolchain before
|
||||||
|
you can debug any projects.</p>
|
||||||
|
|
||||||
|
<p>The Stand-alone Debugger uses plug-ins from the CDT (C/C++ Development Tools) project pertaining to
|
||||||
|
debugging an application. These CDT debugging components require some GNU toolchain elements such as
|
||||||
|
the gdb debugger and gcc compiler. The Stand-alone Debugger does allow editing files but does not support rebuilding
|
||||||
|
a project; a user can do that outside of the Stand-alone Debugger either either from the command line or using
|
||||||
|
the full CDT IDE which supports edit/compile/build/debug.
|
||||||
|
|
||||||
|
<p>Each platform that runs the Stand-alone Debugger requires different steps to acquire the GNU toolchain.</p>
|
||||||
|
|
||||||
|
<h2>Windows</h2>
|
||||||
|
<p>For windows, MinGW and Cygwin are the two main platform choices for acquiring the GNU toolchain.
|
||||||
|
It is important to understand the difference between them.
|
||||||
|
Cygwin produces executables that use the Cygwin POSIX runtime. Note that this runtime is GPL licensed.
|
||||||
|
MinGW produces native Windows executables that do not require a separate runtime.</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li><p>For <strong>MinGW</strong>, it is recommended to use the MinGW installer, mingw-get, to manage your
|
||||||
|
MinGW installation. Download and run the latest mingw-get-inst package from the
|
||||||
|
<a href="http://sourceforge.net/projects/mingw/files">MinGW Downloads page.</a>
|
||||||
|
</p>
|
||||||
|
<p>Note that the Wascana IDE has been discontinued.</p>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li><p><strong>Cygwin</strong> can be installed from the Cygwin site at
|
||||||
|
<a href="http://www.cygwin.com">http://www.cygwin.com</a>. You need to manually select
|
||||||
|
the gdb and gcc packages. The gcc package is used to figure out default include paths
|
||||||
|
and built-in macros for indexing the code for navigation purposes.</p>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li><p>The <strong>Windows SDK</strong> provides the Visual C++ compiler and header files and libraries required
|
||||||
|
to create Windows applications.</p>
|
||||||
|
<p><i>Note:</i> For this release, the integration should be considered beta quality. It is not recommended for
|
||||||
|
production use.</p>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>Linux</h2>
|
||||||
|
<p>All Linux distributions include the GNU toolchain. They may not, however, be installed by default.
|
||||||
|
For instructions about installing the GNU toolchain for Linux, see the instructions for your particular distribution.</p>
|
||||||
|
|
||||||
|
<h2>Mac OS X</h2>
|
||||||
|
The Stand-alone Debugger supports the Apple GNU toolchain that is included in with the Xcode IDE. It can be downloaded
|
||||||
|
from the Apple's developer site, <a href="http://developer.apple.com/">http://developer.apple.com</a>
|
||||||
|
|
||||||
|
<h2>Other Platforms</h2>
|
||||||
|
<p>The GNU toolchain is supported on all platforms that the Stand-alone Debugger supports. For instructions about installing the GNU toolchain
|
||||||
|
on your platform, see your platform vendor.</p>
|
||||||
|
|
||||||
|
<p><img src="../images/ng00_04a.gif" ALT="QNX Copyright Statement" >
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
|
@ -0,0 +1,63 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<title>Breakpoints</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Breakpoints</h1>
|
||||||
|
|
||||||
|
<p>A breakpoint suspends the execution of a program at the location where the breakpoint is set.
|
||||||
|
To set a line breakpoint, right-click in the marker bar area on the left side of an editor beside
|
||||||
|
the line where you want the program to be suspended, then choose <strong>Toggle Breakpoint</strong>. You can
|
||||||
|
also double-click on the marker bar next to the source code line. A new breakpoint marker appears
|
||||||
|
on the marker bar, directly to the left of the line where you added the breakpoint. Also, the new
|
||||||
|
breakpoint appears in the Breakpoints view list.
|
||||||
|
</p>
|
||||||
|
<p>Once set, a breakpoint can be enabled and disabled by right-clicking on its icon or by
|
||||||
|
right-clicking on its description in the <strong>Breakpoints</strong> view.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li>When a breakpoint is enabled, it causes the program to suspend whenever it is hit.
|
||||||
|
Enabled breakpoints are indicated with a blue
|
||||||
|
<img src="../images/icon_breakpoint_obj.gif" alt="enabled breakpoint" > circle.
|
||||||
|
Enabled breakpoints that are successfully installed
|
||||||
|
are indicated with a checkmark overlay.</li>
|
||||||
|
<li>When a breakpoint is disabled, it will not affect the execution of the program.
|
||||||
|
Disabled breakpoints are indicated with a white
|
||||||
|
<img src="../images/icon_breakpoint_disable.gif" alt="disabled breakpoint" > circle.<br>
|
||||||
|
<img src="../images/add_breakpoint.png" ALT="Editor view with cursor highlighting breakpoint" width="453" height="335">
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<p><strong>Note: </strong>Execution will also suspend
|
||||||
|
if <strong>Stop at main() on startup</strong> is enabled
|
||||||
|
on the <strong>Launch Configuration</strong> dialog.
|
||||||
|
To access the <strong>Launch Configuration</strong> dialog,
|
||||||
|
from the menu bar choose <strong>Run > Debug</strong>.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<hr>
|
||||||
|
|
||||||
|
<p><img src="../images/ngref.gif" ALT="Related reference" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../reference/cdt_o_views.htm">Run menu</a><br>
|
||||||
|
<a href="../reference/cdt_o_views.htm">Breakpoints view</a>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<img src="../images/rh03_04.gif" ALT="Red Hat Statement"><br>
|
||||||
|
<img src="../images/ng00_04a.gif" ALT="IBM Copyright Statement">
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
|
@ -0,0 +1,162 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<title>Building C/C++ projects</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Building C/C++ projects</h1>
|
||||||
|
<p>The CDT relies on an external make utility, such as GNU make, to
|
||||||
|
build a project. The CDT can generate makefiles automatically when you
|
||||||
|
create a Managed Make C project or a Managed Make C++ project. You have
|
||||||
|
the option of creating a Standard Make C project or a Standard Make C++
|
||||||
|
project and providing the makefile yourself.</p>
|
||||||
|
<h2>Required utilities</h2>
|
||||||
|
<p>You must install and configure the following utilities:
|
||||||
|
</p>
|
||||||
|
<ul>
|
||||||
|
<li>Build (e.g. make).</li>
|
||||||
|
<li>Compile (e.g. gcc).</li>
|
||||||
|
<li>Debug (e.g. gdb).</li>
|
||||||
|
</ul>
|
||||||
|
<strong>Note: </strong> while make, gcc and gdb are the examples used in the
|
||||||
|
documentation, virtually any similar set of tools or utilities could be
|
||||||
|
used.
|
||||||
|
<p></p>
|
||||||
|
<p><strong>Tip: </strong>Cygwin contains these utilities (make, gcc and gdb) for
|
||||||
|
a Windows environment. While running the cygwin installation,
|
||||||
|
ensure <span class="typewriter">gcc</span> and <span class="typewriter">make</span> are selected since they are not
|
||||||
|
installed by default. For more information, see <a
|
||||||
|
href="http://www.cygwin.com">http://www.cygwin.com</a>. If you are a
|
||||||
|
Red Hat user, all that you need to do to build your project is included
|
||||||
|
in the Red Hat Linux installation.
|
||||||
|
For other operating systems, please refer to your installation
|
||||||
|
documentation.</p>
|
||||||
|
<p></p>
|
||||||
|
<h2>Build terminology</h2>
|
||||||
|
<p>The CDT uses a number of terms to describe the scope of the build. </p>
|
||||||
|
<h3>Build Project</h3>
|
||||||
|
<p>This is an incremental build (make all, assuming all is defined in
|
||||||
|
your makefile). Only the components affected by modified files in that
|
||||||
|
particular project are built.</p>
|
||||||
|
<h3>Rebuild Project</h3>
|
||||||
|
<p>Builds every file in the project whether or not a file has been
|
||||||
|
modified since the last build. A rebuild is a clean followed by a build.</p>
|
||||||
|
<p>For more information on builds, see:</p>
|
||||||
|
<ul>
|
||||||
|
<li><strong>Workbench User Guide > Concepts > Workbench > Builds</strong></li>
|
||||||
|
<li><strong>Workbench User Guide > Tasks > Building resources</strong></li>
|
||||||
|
</ul>
|
||||||
|
<p>Build-related information is displayed as follows:</p>
|
||||||
|
<ul>
|
||||||
|
<li>The Console view displays the output of the build tools.</li>
|
||||||
|
<li>The Problems view displays a list of compiler errors and warnings
|
||||||
|
related to your projects.</li>
|
||||||
|
<li>For Standard Make projects, the Makefile targets are displayed in
|
||||||
|
the Make Targets view.</li>
|
||||||
|
</ul>
|
||||||
|
<p>For more information about the Problems view, see <strong>Workbench User
|
||||||
|
Guide > Reference > User interface information > Views and
|
||||||
|
editors > Problems view</strong>.</p>
|
||||||
|
|
||||||
|
<h2>Getting a makefile</h2>
|
||||||
|
<p>You can either create a C/C++ project for which you supply the <strong>makefile</strong>
|
||||||
|
or create a C/C++ project for which the CDT generates makefiles
|
||||||
|
automatically.</p>
|
||||||
|
<p>To create a new project, from the menu bar choose <strong>File > New
|
||||||
|
> Project</strong>. In the dialog that appears, expand the C/C++ group
|
||||||
|
and choose e.g. C Project</p>
|
||||||
|
<ul>
|
||||||
|
<li>In the resulting wizard page, to create a project for which you supply the <strong>makefile</strong>,
|
||||||
|
select <strong>Makefile project</strong> and choose one of the alternatives under that.
|
||||||
|
An empty project, or a simple "Hello World" can be created.
|
||||||
|
You edit and manage the makefile yourself.
|
||||||
|
<p> </p>
|
||||||
|
</li>
|
||||||
|
<li>To create a project for which the CDT supplies a basic <strong>makefile</strong>,
|
||||||
|
select another project type, e.g. <strong>Executable</strong> and choose one of the examples
|
||||||
|
under that, or choose <strong>Empty Project</strong>.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<h2>Setting build preferences</h2>
|
||||||
|
<p>You can set build preferences in Eclipse:</p>
|
||||||
|
<dl>
|
||||||
|
<dt>Build order</dt>
|
||||||
|
<dd>If certain projects must be built before others, you can set the <em>build
|
||||||
|
order</em>. If your project refers to another project, the CDT must
|
||||||
|
build the other project first. To set the build order, from the menu
|
||||||
|
bar select <strong>Window > Preferences</strong> and choose <strong> General > Preferences > Build Order</strong>.
|
||||||
|
<p>When you set the build order, the CDT does not rebuild projects
|
||||||
|
that depend on a project; you must rebuild all projects to ensure all
|
||||||
|
changes are propagated.</p>
|
||||||
|
</dd>
|
||||||
|
<dt>Automatic save</dt>
|
||||||
|
<dd>You can set the CDT to perform an <em>automatic save</em> of all
|
||||||
|
modified resources when you perform a manual build. In the preferences dialog,
|
||||||
|
select <strong>General > Workspace</strong> and check <strong>Save automatically before build</strong>.
|
||||||
|
By default,
|
||||||
|
this feature is <em>not</em> enabled.</dd>
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
<h2>Controlling the building of your project</h2>
|
||||||
|
<p>For a Makefile project, the C/C++ compiler that a project uses
|
||||||
|
is controlled by the project's <strong>Properties</strong> setting.
|
||||||
|
To view a project's properties, right-click on the project and select <strong>Properties</strong>.
|
||||||
|
In the dialog that appears, the <strong>C/C++ Build</strong>
|
||||||
|
page enables you to control a variety of settings, including:</p>
|
||||||
|
<dl>
|
||||||
|
<dt>Build Command</dt>
|
||||||
|
<dd>On the <strong>Builder Settings</strong> tab, this controls which <code>make</code> is used. To change it, uncheck <strong>Use
|
||||||
|
default build command</strong> and change it or add arguments to the make command.</dd>
|
||||||
|
|
||||||
|
<dt>Build Setting</dt>
|
||||||
|
<dd>On the <strong>Behaviour</strong> tab, this controls whether the compiler will <strong>Stop on first build error</strong> or not
|
||||||
|
(keep going). Unchecking <strong>Stop on first build error</strong> will force the compiler to attempt to build all referenced
|
||||||
|
projects even if the current project has errors.</dd>
|
||||||
|
|
||||||
|
<dt>Workbench Build Behavior</dt>
|
||||||
|
<dd>On the <strong>Behaviour </strong> tab, this controls which makefile target will be built depending on the scope of the
|
||||||
|
build, e.g. <code>all</code> or <code>clean</code>.</dd>
|
||||||
|
</dl>
|
||||||
|
<p>For a standard (non-Makefile) project (often called "Managed Build" or "Managed Make" project from
|
||||||
|
earlier CDT version), the project properties dialog enables
|
||||||
|
you to manage the build configurations of your project. For additional
|
||||||
|
information see:</p>
|
||||||
|
<ul>
|
||||||
|
<li><strong>Reference > C/C++ Properties > C/C++ Project Properties > Managed Make
|
||||||
|
Projects</strong></li>
|
||||||
|
<li><strong>Reference > C/C++ Properties > C/C++ Project Properties > Managed Make File
|
||||||
|
Properties</strong></li>
|
||||||
|
</ul>
|
||||||
|
<h2>Viewing build information</h2>
|
||||||
|
<p>Build-related information is displayed as follows: </p>
|
||||||
|
<ul>
|
||||||
|
<li>The <strong>Console</strong> view displays the output of the make utility.</li>
|
||||||
|
<li>The <strong>Problems</strong> view displays a list of compiler errors and
|
||||||
|
warnings related to your projects. </li>
|
||||||
|
<li>For a Standard Make project, build actions display in the <strong>Make
|
||||||
|
Targets</strong> view.</li>
|
||||||
|
</ul>
|
||||||
|
<p><img src="../images/ngconcepts.gif" alt="Related concepts"
|
||||||
|
width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="cdt_c_projects.htm">CDT Projects</a><br>
|
||||||
|
<a href="cdt_c_proj_file_views.htm">Project file views</a></p>
|
||||||
|
<p><img src="../images/ngtasks.gif" alt="Related tasks"
|
||||||
|
width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../tasks/cdt_o_build_task.htm">Building projects</a></p>
|
||||||
|
<p><img src="../images/ngref.gif" alt="Related reference"
|
||||||
|
width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../reference/cdt_u_properties.htm">Project Properties</a></p>
|
||||||
|
|
||||||
|
<p><img src="../images/rh03_04.gif" alt="Red Hat Copyright Statement"><br>
|
||||||
|
<img src="../images/ng00_04a.gif" alt="IBM Copyright Statement">
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,66 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<title>Comments</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Comments</h1>
|
||||||
|
<p>Comments are lines in a source file that have been marked to be ignored by the compiler.
|
||||||
|
Two styles of comments are supported by current C/C++ compilers:</p>
|
||||||
|
<ul>
|
||||||
|
<li><samp>/* text */</samp></li>
|
||||||
|
<li><samp>// text</samp></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>Comment</h2>
|
||||||
|
<p>You can quickly comment out one or more lines of code by inserting the leading
|
||||||
|
characters <samp>//</samp> at the beginning of the line. To do so, select the line
|
||||||
|
(or lines) of code you want to comment out and press <strong>CTRL+/</strong> (slash).</p>
|
||||||
|
|
||||||
|
<h2>Uncomment</h2>
|
||||||
|
<p>To uncomment select the line (or lines) of code, and press <strong>CTRL+\</strong>
|
||||||
|
(backslash).
|
||||||
|
|
||||||
|
<p><strong>Tip:</strong> The characters <samp>/* */</samp> on lines that are
|
||||||
|
already commented out, are not affected when you comment and uncomment code.</p>
|
||||||
|
|
||||||
|
<h2>Multiline comment</h2>
|
||||||
|
<p>You can use the Content Assist feature to insert a multi-line comment before a function.
|
||||||
|
Type <span class="typewriter">com+Ctrl+Space</span>, and the following code is entered at the cursor location:
|
||||||
|
<br><pre>
|
||||||
|
/*
|
||||||
|
* author userid
|
||||||
|
*
|
||||||
|
* To change this generated comment edit the template variable "comment":
|
||||||
|
* Window > Preferences > C/C++ > Editor > Templates.
|
||||||
|
*/
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
To change the default comment click <strong>Window > Preferences > C > Templates</strong>. For more information see the
|
||||||
|
<a href="cdt_c_content_assist.htm">Content Assist</a> section.
|
||||||
|
|
||||||
|
<p><img src="../images/ngconcepts.gif" ALT="Related concepts" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="cdt_c_content_assist.htm">Content Assist and code completion</a></p>
|
||||||
|
<p><img src="../images/ngtasks.gif" ALT="Related tasks" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../tasks/cdt_t_cust_cpp_editor.htm">Customizing the C++ editor</a><br>
|
||||||
|
<a href="../tasks/cdt_t_comment_out.htm">Commenting out code</a></p>
|
||||||
|
<p><img src="../images/ngref.gif" ALT="Related reference" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../reference/cdt_o_ceditor_pref.htm">C/C++ editor preferences</a></p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<img src="../images/rh03_04.gif" ALT="Red Hat Copyright Statement"><br>
|
||||||
|
<img src="../images/ng00_04a.gif" ALT=" IBM Copyright Statement" >
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
|
@ -0,0 +1,98 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<title>Content Assist</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Content Assist</h1>
|
||||||
|
|
||||||
|
<p>Content Assist is a set of tools built into the CDT that can reduce the number of keystrokes you must
|
||||||
|
type to create your code. The Content Assist plug-in consists of several components that forecast what
|
||||||
|
a developer will type, based on the current context, scope, and prefix.</p>
|
||||||
|
|
||||||
|
<h2>Code completion</h2>
|
||||||
|
|
||||||
|
<p>Content assist provides code completion anywhere in the document. For the current project a list is
|
||||||
|
displayed of the elements that begin with the letter combination you entered, and
|
||||||
|
the relevance of each proposal is determined in the following order:</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li>Fields</li>
|
||||||
|
<li>Variables</li>
|
||||||
|
<li>Methods</li>
|
||||||
|
<li>Functions</li>
|
||||||
|
<li>Classes</li>
|
||||||
|
<li>Structs</li>
|
||||||
|
<li>Unions</li>
|
||||||
|
<li>Namespaces</li>
|
||||||
|
<li>Enumerations</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
You trigger the Code completion feature when you call Content Assist (such as when you type <span class="typewriter">Ctrl+Space</span>), but it is auto-activated when you type
|
||||||
|
<Q><strong>.</strong></Q>, <Q><strong>-></strong></Q> or <Q><strong>::</strong></Q>.</p>
|
||||||
|
|
||||||
|
<p><img src="../images/contentAssist_example.png" alt="C++ example showing Code Assist popup"></p>
|
||||||
|
|
||||||
|
<p>You can view the signature of each item on the list in a pop-up by pointing to it. You can then select an item in the list to insert it directly into your code. </p>
|
||||||
|
|
||||||
|
<h2>Templates</h2>
|
||||||
|
|
||||||
|
<p>You can create and save templates for frequently used sections of code, which will be inserted according to scope. The Content Assist feature also provides quick access to code
|
||||||
|
templates.</p>
|
||||||
|
|
||||||
|
<p>When you enter a letter combination in the C/C++ editor, and type <span class="typewriter">CTRL+SPACE</span> (or right-click and click <strong>Content Assist</strong>), a
|
||||||
|
list of code elements and templates that start with the letter combination that you typed is displayed.</p>
|
||||||
|
|
||||||
|
<p>You can then select a template from the list and it is inserted directly into your code.</p>
|
||||||
|
|
||||||
|
<img src="../images/editor_c_codetemplates_use.png" alt="C++ example showing Code Assist popup"></p>
|
||||||
|
|
||||||
|
<p>For example, the template <samp>do while statement</samp> contains the following code:</p>
|
||||||
|
|
||||||
|
<p><img src="../images/codetemplates_example.png" alt="Code Template showing do-while example"></p>
|
||||||
|
|
||||||
|
<p> When you select the <samp>do</samp> template from the list, you insert the following code:</p>
|
||||||
|
|
||||||
|
<p><pre>do {
|
||||||
|
} while (condition);</pre></p>
|
||||||
|
|
||||||
|
|
||||||
|
<p>If the completion engine finds only one proposal in your templates, that proposal is inserted at the current cursor position.
|
||||||
|
For example if you create a new .cpp file and type <span class="typewriter">mai+CTRL+SPACE</span> the following code is inserted at the cursor location:</p>
|
||||||
|
<p><pre>int
|
||||||
|
main(int argc, char **argv) {
|
||||||
|
|
||||||
|
}</pre></p>
|
||||||
|
|
||||||
|
<h2>No Completions</h2>
|
||||||
|
|
||||||
|
<p>If you invoke Content Assist, but no completions are found a message will be displayed on the status to inform you that the Content Assist parser has timed out.</p>
|
||||||
|
|
||||||
|
<p><img src="../images/cdt_ca_no_completions.png" alt="Content Assist No completions available message"></p>
|
||||||
|
|
||||||
|
|
||||||
|
<p><img src="../images/ngconcepts.gif" ALT="Related concepts" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="cdt_o_code_entry.htm">Code entry</a></p>
|
||||||
|
<p><img src="../images/ngtasks.gif" ALT="Related tasks" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../tasks/cdt_t_contentassist.htm">Using Content Assist</a><br>
|
||||||
|
<a href="../tasks/cdt_t_add_codetemp.htm">Creating and editing templates</a><br>
|
||||||
|
<a href="../tasks/cdt_t_imp_code_temp.htm">Importing and exporting templates</a></p>
|
||||||
|
<p><img src="../images/ngref.gif" ALT="Related reference" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../reference/cdt_u_icons.htm">C/C++ perspective icons</a></p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
|
||||||
|
<img src="../images/ng00_04a.gif" ALT="IBM Copyright Statement" ></p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
|
@ -0,0 +1,89 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
|
||||||
|
<meta name="ProgId" content="FrontPage.Editor.Document">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<title>Debug information</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Debug information</h1>
|
||||||
|
|
||||||
|
<p>When using the Stand-alone Debugger, you will be using the <strong>Debug</strong>
|
||||||
|
perspective. The <strong>Debug</strong> perspective lets you manage the debugging or running of a program
|
||||||
|
in the Eclipse Workbench. You can control the execution of your program by setting
|
||||||
|
breakpoints, suspending launched programs, stepping through your code, and
|
||||||
|
examining the contents of variables.</p>
|
||||||
|
<p> The <strong>Debug</strong> perspective displays the following information:</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li>The stack frame for the suspended threads
|
||||||
|
for each target that you are debugging</li>
|
||||||
|
<li>Each thread in your program represented as a node in the tree</li>
|
||||||
|
<li>The process for each program that you are running</li>
|
||||||
|
</ul>
|
||||||
|
<p>The <strong>Debug</strong> perspective also drives the <strong>C/C++ Editor</strong>. As you step
|
||||||
|
through your program, the <strong>C/C++ Editor</strong> highlights the location of the
|
||||||
|
execution pointer. </p>
|
||||||
|
|
||||||
|
<h2>Variables</h2>
|
||||||
|
|
||||||
|
<p>You can view information about the variables in a selected stack frame in the
|
||||||
|
Variables view. When execution stops, the changed values are
|
||||||
|
by default highlighted in red. Like the other debug-related views, the Variables view does
|
||||||
|
not refresh as you run your executable. A refresh occurs when execution stops.</p>
|
||||||
|
|
||||||
|
<h2>Expressions</h2>
|
||||||
|
|
||||||
|
<p>An expression is a snippet of code that can be evaluated to produce a result.
|
||||||
|
The context for an expression depends on the particular debug model. Some
|
||||||
|
expressions may need to be evaluated at a specific location in the program so
|
||||||
|
that the variables can be referenced. You can view information about expressions
|
||||||
|
in the Expressions view.</p>
|
||||||
|
|
||||||
|
<h2>Registers</h2>
|
||||||
|
|
||||||
|
<p>You can view information about the registers in a selected stack frame.
|
||||||
|
Values that have changed are highlighted in the Registers view when your program
|
||||||
|
stops.</p>
|
||||||
|
|
||||||
|
<h2>Memory</h2>
|
||||||
|
|
||||||
|
<p>You can inspect and change your process memory.</p>
|
||||||
|
|
||||||
|
<h2>Disassembly</h2>
|
||||||
|
|
||||||
|
<p>You can view disassembled code mixed with source information.</p>
|
||||||
|
|
||||||
|
<h2>Modules</h2>
|
||||||
|
|
||||||
|
<p>You can view information about the modules (executables and shared libraries) loaded
|
||||||
|
in the current debug session.</p>
|
||||||
|
|
||||||
|
<h2>Signals</h2>
|
||||||
|
|
||||||
|
<p>You can view the signals defined on the selected debug target and how the
|
||||||
|
debugger handles each one.</p>
|
||||||
|
<p><img src="../images/ngconcepts.gif" ALT="Related concepts" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="cdt_c_over_cdt.htm">Overview of the CDT</a><br>
|
||||||
|
<a href="cdt_c_over_dbg.htm">Debug overview</a></p>
|
||||||
|
<p><img src="../images/ngtasks.gif" ALT="Related tasks" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../tasks/cdt_o_debug.htm">Debugging</a><br>
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/ngref.gif" ALT="Related reference" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../reference/cdt_o_run_dbg_pages.htm">Run and Debug dialog box</a><br>
|
||||||
|
<a href="../reference/cdt_o_dbg_view.htm">Debug views</a></p><p>
|
||||||
|
|
||||||
|
<img src="../images/ng00_04a.gif" ALT="IBM Copyright Statement" > </p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
|
@ -0,0 +1,54 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||||
|
<title>Views in the C/C++ perspective</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Discovery options</h1>
|
||||||
|
|
||||||
|
<p>For projects where the IDE generates a makefile to build the project automatically, the IDE has more information about the internal build state of the make project compared to those projects where you provide a makefile to build the project.
|
||||||
|
|
||||||
|
<p>For example, a makefile includes build information and other settings, such as include file paths (-I) and macro definitions (-D), which are standard to the build tools (such as the compiler and linker). When the makefile is automatically created for you, this information is known to Eclipse to a greater extent then when you create and manage the makefile for a project yourself. The type of information affects the search capabilities and Code Assist abilities of Eclipse. Therefore, in this example, the purpose of Discovery Options is for improved search and Code Assist capability for projects where Eclipse does not manage the makefile for you. For example, in an open source file of an editor view, to see the declaration for a function that the code calls, you select the function, right click, and select <strong>Open Declaration</strong> from the context menu. If the location of the include file (that was coded in the makefile for the project) containing the function declaration was in some directory, the CDT would not find the declaration because it has no visibility for that include path. Consequently, you can use Discovery Options in the CDT to enhance the IDE build state by parsing the build process output to extract build path information that the CDT searching mechanism uses to locate and open the include file. By default, the CDT uses GNU* tools (gcc, etc.). If you want to build your projects using another compiler, use the settings described here.</p>
|
||||||
|
|
||||||
|
<p>Scanner configuration discovery is tightly linked to project's build process. The first part of scanner discovery begins during the make build for make projects where you provide the makefile. The Eclipse CDT parses the build output for compiler commands with options that specify the definition of the preprocessor symbols and include search paths (for the gcc compiler, -D and -I), and then it stores the information as the project's discovered scanner configuration.
|
||||||
|
|
||||||
|
<p>Next, after the build process completes, it is implemented as a separate Eclipse builder where it runs a generate scanner info command, and then parses the output (properties specified on the Discover Options tab for Builds in the Project Properties window).
|
||||||
|
|
||||||
|
<p>For C++, the default generate scanner information command is <strong>gcc -E -P -v myfile.c | myfile.cpp</strong>. This command reads the compiler's configuration file and prints the information that includes compiler's internally defined preprocessor symbols and include search paths.
|
||||||
|
|
||||||
|
<p>A single scanner configuration is applicable to all the files in a project. Although Eclipse discovers the information for each compilation unit, it stores the scanner configuration on a per project basis. This means that Eclipse applies a single, cumulative scanner configuration to all files in a project.
|
||||||
|
|
||||||
|
<p>The following situations identify circumstances when certain parts of the scanner configuration are in conflict:
|
||||||
|
<ul>
|
||||||
|
<li>Symbol definitions that contradict
|
||||||
|
<li>An incorrect order for the include paths
|
||||||
|
<li>Internal scanner information may not be applicable to all the files in a project (for a single compiler), because some files might be compiled with a different compiler, or have target specific options specified.
|
||||||
|
</ul>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p><strong>Note:</strong> Only basic command line options are supported. In addition, only basic scanner configuration related command line options are recognized (for example, -D and -I for gcc). For some of the commands, their relative position in the command line is important. For information about these options, see the documentation for the utilities you are using.
|
||||||
|
|
||||||
|
<p><img src="../images/ngconcepts.gif" ALT="Related concepts" width="143" height="21">
|
||||||
|
<br><a href="cdt_c_over_cdt.htm">CDT Overview</a>
|
||||||
|
<br><a href="cdt_c_perspectives.htm">C/C++ perspectives</a>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
<p><img src="../images/ngref.gif" ALT="Related reference" width="143" height="21">
|
||||||
|
<br><a href="../reference/cdt_o_views.htm">Views</a>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<img src="../images/rh03_04.gif" ALT="Red Hat Copyright Statement"><br>
|
||||||
|
<img src="../images/ng00_07.gif" ALT=" IBM Copyright Statement" >
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
|
@ -0,0 +1,53 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||||
|
<title>C/C++ editor</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>C/C++ editor</h1>
|
||||||
|
|
||||||
|
<p>The Stand-alone Debugger provides an editor that gives you specific support for editing C/C++ code.
|
||||||
|
This C/C++ editor is invoked automatically when you open a C/C++ source file. While you are able
|
||||||
|
to modify the contents of a file, if you save those changes, you will need to rebuild the project outside of the Stand-alone Debugger
|
||||||
|
to synchronize the debug information in the executable with the source files used.</p>
|
||||||
|
|
||||||
|
<p>The C/C++ editor includes the following features:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Syntax highlighting</li>
|
||||||
|
<li>Content/code assist</li>
|
||||||
|
<li>Code folding</li>
|
||||||
|
<li>Integrated debugging features</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<p>You can customize some of the operation of the Editor view from the <strong>Window > Preferences > C/C++ > Editor</strong> preferences dialog.</p>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<p><img src="../images/ngconcepts.gif" ALT="Related concepts" width="143" height="21">
|
||||||
|
<br><a href="cdt_c_over_cdt.htm">CDT Overview</a>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p><img src="../images/ngtasks.gif" ALT="Related tasks" width="143" height="21">
|
||||||
|
<br><a href="../tasks/cdt_t_contentassist.htm">Using Content Assist</a>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p><img src="../images/ngref.gif" ALT="Related reference" width="143" height="21">
|
||||||
|
<br><a href="../reference/cdt_o_ceditor_pref.htm">C/C++ editor preferences</a>
|
||||||
|
<br><a href="../reference/cdt_u_outline_view.htm">Outline view for C/C++</a>
|
||||||
|
<br><a href="../reference/cdt_o_views.htm">Views and editors</a>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<img src="../images/rh03_04.gif" ALT="Red Hat Copyright Statement"><br>
|
||||||
|
<img src="../images/ng00_07.gif" ALT=" IBM Copyright Statement" >
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,59 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<title>C/C++ Indexer</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>C/C++ Indexer</h1>
|
||||||
|
<p>The C/C++ indexer uses the parser to create a database of your
|
||||||
|
source and header files that provides the basis for C/C++ search,
|
||||||
|
navigation features and parts of content assist.</p>
|
||||||
|
<p>The indexer runs on a background thread and reacts to resource
|
||||||
|
change events such as:
|
||||||
|
</p>
|
||||||
|
<ul>
|
||||||
|
<li>C/C++ project creation/deletion</li>
|
||||||
|
<li>Source files creation/deletion</li>
|
||||||
|
<li>File imports</li>
|
||||||
|
<li>Source file content changes</li>
|
||||||
|
</ul>
|
||||||
|
<p>It is possible to customize the behavior of the indexer through the
|
||||||
|
use of source folders or even turn it off completely. This customizable
|
||||||
|
behavior is available on a per-project basis (i.e. it is possible to
|
||||||
|
have different indexer settings for each project in your workspace). <br>
|
||||||
|
</p>
|
||||||
|
<p>CDT supports the contribution of additional indexers, with 2
|
||||||
|
indexers being provided with the default CDT release:<br>
|
||||||
|
</p>
|
||||||
|
<ul>
|
||||||
|
<li>Fast C/C++ Indexer : provides fastest indexing capabilities - both
|
||||||
|
declarations and cross reference information. This is the recommended indexer.<br>
|
||||||
|
</li>
|
||||||
|
<li>Full C/C++ Indexer : provides even more accurate indexing capabilities at the cost of performance - both
|
||||||
|
declarations and cross reference information.<br>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<p><img src="../images/ngconcepts.gif" alt="Related concepts" width="143" height="21"><br>
|
||||||
|
<a href="cdt_c_search.htm">C/C++ search</a><br>
|
||||||
|
<a href="cdt_c_indexer_prog_bar.htm">C/C++ Indexer Progress Bar</a><br>
|
||||||
|
<a href="../concepts/cdt_c_scanner_discovery.htm">Scanner Discovery</a><br>
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/ngtasks.gif" alt="Related tasks" width="143" height="21"><br>
|
||||||
|
<a href="../tasks/cdt_t_sel_search.htm">Selection Searching for C/C++ elements</a><br>
|
||||||
|
<a href="../tasks/cdt_t_set_src_fold.htm">Setting Source Folders</a><br>
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/ngref.gif" alt="Related reference" width="143" height="21"><br>
|
||||||
|
<a href="../reference/cdt_u_search.htm">C/C++ search page, Search dialog box</a><br>
|
||||||
|
<a href="../reference/cdt_u_prop_general_idx.htm">C/C++ Project Properties, Indexer</a><br>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p> </p>
|
||||||
|
<img src="../images/ng00_07.gif" alt="IBM Copyright Statement"
|
||||||
|
style="width: 324px; height: 14px;">
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,47 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<title>Full C/C++ Indexer</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Full C/C++ Indexer</h1>
|
||||||
|
<p>The Full C/C++ Indexer is a new indexer for CDT 3.0 which makes use
|
||||||
|
of the new DOM. It creates a full index of the project's source
|
||||||
|
providing both declaration and cross reference information to the
|
||||||
|
various clients that make use of the index. In comparison with the
|
||||||
|
previous versions of the indexer, the new C/C++ indexer provides
|
||||||
|
quicker and more accurate results.<br>
|
||||||
|
</p>
|
||||||
|
<p>This indexer provides the most complete set of information but can
|
||||||
|
be potentially long running, especially on larger projects. <br>
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/ngconcepts.gif" alt="Related concepts"
|
||||||
|
width="143" height="21"> <br>
|
||||||
|
<a href="cdt_c_indexer.htm">C/C++ Indexer</a><br>
|
||||||
|
<a href="cdt_c_search.htm">C/C++ search</a><br>
|
||||||
|
<a href="cdt_c_indexer_prog_bar.htm">C/C++ Indexer Progress Bar</a></p>
|
||||||
|
<p><img src="../images/ngtasks.gif" alt="Related tasks"
|
||||||
|
width="143" height="21"><br>
|
||||||
|
<a href="../tasks/cdt_t_sel_search.htm">Selection Searching for C/C++
|
||||||
|
elements</a><br>
|
||||||
|
|
||||||
|
<a href="../tasks/cdt_t_set_src_fold.htm">Setting Source Folders</a><br>
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/ngref.gif" alt="Related reference"
|
||||||
|
width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../reference/cdt_u_search.htm">C/C++ search page, Search
|
||||||
|
dialog box</a>
|
||||||
|
<br>
|
||||||
|
<a href="../reference/cdt_u_prop_general_idx.htm">C/C++ Project Properties, Indexer</a>
|
||||||
|
</p>
|
||||||
|
<p> </p>
|
||||||
|
<img style="width: 324px; height: 14px;" src="../images/ng00_07.gif"
|
||||||
|
alt="IBM Copyright Statement">
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,46 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta content="en-us" http-equiv="Content-Language">
|
||||||
|
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
||||||
|
<title>C/C++ Indexer Progress Bar</title>
|
||||||
|
<link href="../help.css" type="text/css" rel="stylesheet">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>C/C++ Indexer Progress Bar</h1>
|
||||||
|
<p>The indexer progress bar shows the progress status of the indexing
|
||||||
|
jobs in the progress views.</p>
|
||||||
|
<p>The indexing jobs can be temporarily paused by pressing the stop
|
||||||
|
button on the progress bar. This will cause the indexer to wait until
|
||||||
|
the next time the user runs a search job or makes a change to an
|
||||||
|
indexed element (by such actions as modifying an existing source file,
|
||||||
|
deleting a file, creating a new file, moving file and so on). The
|
||||||
|
indexer at this point will resume with the previously postponed
|
||||||
|
indexing job before moving on to the new one.</p>
|
||||||
|
<p>If you wish to cease indexing all together, you can cancel an
|
||||||
|
indexing job and disable the indexer through the properties.</p>
|
||||||
|
<p><img height="21" width="143" alt="Related concepts"
|
||||||
|
src="../images/ngconcepts.gif" >
|
||||||
|
<br>
|
||||||
|
<a href="cdt_c_search.htm">C/C++ search</a><br>
|
||||||
|
<a href="cdt_c_indexer.htm">C/C++ Indexer</a><br>
|
||||||
|
<p><img height="21" width="143" alt="Related tasks"
|
||||||
|
src="../images/ngtasks.gif" ><br>
|
||||||
|
<a href="../tasks/cdt_t_sel_search.htm">Selection Searching for C/C++
|
||||||
|
elements</a><br>
|
||||||
|
<a href="../tasks/cdt_t_set_src_fold.htm">Setting Source Folders</a><br>
|
||||||
|
</p>
|
||||||
|
<p><img height="21" width="143" alt="Related reference"
|
||||||
|
src="../images/ngref.gif" >
|
||||||
|
<br>
|
||||||
|
<a href="../reference/cdt_u_search.htm">C/C++ search page, Search
|
||||||
|
dialog box</a>
|
||||||
|
<br>
|
||||||
|
<a href="../reference/cdt_u_prop_general_idx.htm">C/C++ Project Properties, Indexer</a>
|
||||||
|
</p>
|
||||||
|
<p> </p>
|
||||||
|
<img alt="IBM Copyright Statement" src="../images/ng00_07.gif">
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,187 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<title>Makefile</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Makefile</h1>
|
||||||
|
<p>A makefile is a text file that is referenced by the make command that describes the building of targets, and contains information such as source-level dependencies and build-order dependencies. </p>
|
||||||
|
<p>The CDT can generate a makefile for you, such projects are called Managed Make projects. Some projects, known as Standard Make projects, allow you to define your own makefile.</p>
|
||||||
|
|
||||||
|
<h2>Sample Makefile</h2>
|
||||||
|
<pre>
|
||||||
|
# A sample Makefile
|
||||||
|
# This Makefile demonstrates and explains
|
||||||
|
# Make Macros, Macro Expansions,
|
||||||
|
# Rules, Targets, Dependencies, Commands, Goals
|
||||||
|
# Artificial Targets, Pattern Rule, Dependency Rule.
|
||||||
|
|
||||||
|
# Comments start with a # and go to the end of the line.
|
||||||
|
|
||||||
|
# Here is a simple Make Macro.
|
||||||
|
LINK_TARGET = test_me.exe
|
||||||
|
|
||||||
|
# Here is a Make Macro that uses the backslash to extend to multiple lines.
|
||||||
|
# This allows quick modification of more object files.
|
||||||
|
OBJS = \
|
||||||
|
Test1.o \
|
||||||
|
Test2.o \
|
||||||
|
Main.o
|
||||||
|
|
||||||
|
# Here is a Make Macro defined by two Macro Expansions.
|
||||||
|
# A Macro Expansion may be treated as a textual replacement of the Make Macro.
|
||||||
|
# Macro Expansions are introduced with $ and enclosed in (parentheses).
|
||||||
|
REBUILDABLES = $(OBJS) $(LINK_TARGET)
|
||||||
|
|
||||||
|
# Make Macros do not need to be defined before their Macro Expansions,
|
||||||
|
# but they normally should be defined before they appear in any Rules.
|
||||||
|
# Consequently Make Macros often appear first in a Makefile.
|
||||||
|
|
||||||
|
# Here is a simple Rule (used for "cleaning" your build environment).
|
||||||
|
# It has a Target named "clean" (left of the colon ":" on the first line),
|
||||||
|
# no Dependencies (right of the colon),
|
||||||
|
# and two Commands (indented by tabs on the lines that follow).
|
||||||
|
# The space before the colon is not required but added here for clarity.
|
||||||
|
clean :
|
||||||
|
rm -f $(REBUILDABLES)
|
||||||
|
echo Clean done
|
||||||
|
|
||||||
|
# There are two standard Targets your Makefile should probably have:
|
||||||
|
# "all" and "clean", because they are often command-line Goals.
|
||||||
|
# Also, these are both typically Artificial Targets, because they don't typically
|
||||||
|
# correspond to real files named "all" or "clean".
|
||||||
|
|
||||||
|
# The rule for "all" is used to incrementally build your system.
|
||||||
|
# It does this by expressing a dependency on the results of that system,
|
||||||
|
# which in turn have their own rules and dependencies.
|
||||||
|
all : $(LINK_TARGET)
|
||||||
|
echo All done
|
||||||
|
|
||||||
|
# There is no required order to the list of rules as they appear in the Makefile.
|
||||||
|
# Make will build its own dependency tree and only execute each rule only once
|
||||||
|
# its dependencies' rules have been executed successfully.
|
||||||
|
|
||||||
|
# Here is a Rule that uses some built-in Make Macros in its command:
|
||||||
|
# $@ expands to the rule's target, in this case "test_me.exe".
|
||||||
|
# $^ expands to the rule's dependencies, in this case the three files
|
||||||
|
# main.o, test1.o, and test2.o.
|
||||||
|
$(LINK_TARGET) : $(OBJS)
|
||||||
|
g++ -g -o $@ $^
|
||||||
|
|
||||||
|
# Here is a Pattern Rule, often used for compile-line.
|
||||||
|
# It says how to create a file with a .o suffix, given a file with a .cpp suffix.
|
||||||
|
# The rule's command uses some built-in Make Macros:
|
||||||
|
# $@ for the pattern-matched target
|
||||||
|
# $lt; for the pattern-matched dependency
|
||||||
|
%.o : %.cpp
|
||||||
|
g++ -g -o $@ -c $<
|
||||||
|
|
||||||
|
# These are Dependency Rules, which are rules without any command.
|
||||||
|
# Dependency Rules indicate that if any file to the right of the colon changes,
|
||||||
|
# the target to the left of the colon should be considered out-of-date.
|
||||||
|
# The commands for making an out-of-date target up-to-date may be found elsewhere
|
||||||
|
# (in this case, by the Pattern Rule above).
|
||||||
|
# Dependency Rules are often used to capture header file dependencies.
|
||||||
|
Main.o : Main.h Test1.h Test2.h
|
||||||
|
Test1.o : Test1.h Test2.h
|
||||||
|
Test2.o : Test2.h
|
||||||
|
|
||||||
|
# Alternatively to manually capturing dependencies, several automated
|
||||||
|
# dependency generators exist. Here is one possibility (commented out)...
|
||||||
|
# %.dep : %.cpp
|
||||||
|
# g++ -M $(FLAGS) $< > $@
|
||||||
|
# include $(OBJS:.o=.dep)
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>Frequently Asked Questions:</h2>
|
||||||
|
Your Console view can be very useful for debugging a build.
|
||||||
|
|
||||||
|
<p><strong>Q1. My Console view says <span class="typewriter"><Q>Error launching builder</Q></span>. What does that mean?</strong></p>
|
||||||
|
<pre>
|
||||||
|
Error launching builder (make -k clean all )
|
||||||
|
(Exec error:Launching failed)
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
<p>Most probably, the build command (by default "make") is not on your path. You can put it on your path and restart Eclipse.<br>
|
||||||
|
You can also change the build command to something that is on your path. If you are using MinGW tools to compile, you should replace the build command with "mingw32-make".</p>
|
||||||
|
|
||||||
|
<p><strong>Q2. My Console view says <span class="typewriter"><Q>No rule to make target 'X'</Q></span>.</strong></p>
|
||||||
|
<pre>
|
||||||
|
make -k clean all
|
||||||
|
make: *** No rule to make target 'clean'.
|
||||||
|
make: *** No rule to make target 'all'.
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
<p>By default, the make program looks for a file most commonly called "Makefile" or "makefile".
|
||||||
|
If it cannot find such a file in the working directory, or if that file is empty or the file does not
|
||||||
|
contain rules for the command line goals ("clean" and "all" in this case), it will normally fail
|
||||||
|
with an error message similar to those shown. </p>
|
||||||
|
|
||||||
|
<p>If you already have a valid Makefile, you may need to change the working directory of your build. The default working directory for the build command is the project's root directory. You can change this by specifying an alternate Build Directory in the Make Project properties.
|
||||||
|
Or, if your Makefile is named something else (eg. <span class="typewriter">buildFile.mk</span>), you can specify the name by setting the default Build command to <span class="typewriter">make -f buildFile.mk</span>.</p>
|
||||||
|
|
||||||
|
<p>If you do not have a valid Makefile, create a new file named Makefile in the root directory. You can then add the contents of the sample Makefile (above), and modify it as appropriate.</p>
|
||||||
|
|
||||||
|
<p><strong>Q3. My Console view says <span class="typewriter">"missing separator"</span>.</strong></p>
|
||||||
|
<pre>
|
||||||
|
make -k clean all
|
||||||
|
makefile:12: *** missing separator. Stop.
|
||||||
|
</pre>
|
||||||
|
<p>The standard syntax of Makefiles dictates that every line in a build rule must be preceded by a Tab character.
|
||||||
|
This Tab character is often accidentally replaced with spaces, and because both result in white-space indentation,
|
||||||
|
this problem is easily overlooked. In the sample provided, the error message can be pinpointed to line 12 of the
|
||||||
|
file "makefile"; to fix the problem, insert a tab at the beginning of that line.</p>
|
||||||
|
|
||||||
|
<p><strong>Q4. My Console view says <span class="typewriter"><Q>Target 'all' not remade because of errors</Q></span>.</strong></p>
|
||||||
|
<pre>
|
||||||
|
make -k clean all
|
||||||
|
make: *** [clean] Error 255
|
||||||
|
rm -f Test1.o Test2.o Main.o test_me.exe
|
||||||
|
g++ -g -o Test1.o -c Test1.cpp
|
||||||
|
make: *** [Test1.o] Error 255
|
||||||
|
make: *** [Test2.o] Error 255
|
||||||
|
make: *** [Main.o] Error 255
|
||||||
|
g++ -g -o Test2.o -c Test2.cpp
|
||||||
|
g++ -g -o Main.o -c Main.cpp
|
||||||
|
make: Target 'all' not remade because of errors.
|
||||||
|
</pre>
|
||||||
|
<p>The likely culprit here is that g++ is not on your Path.<br>
|
||||||
|
<p>The Error 255 is produced by make as a result of its command shell not being able to find a command for a particular rule.<br>
|
||||||
|
Messages from the standard error stream (the lines saying Error 255) and standard output stream (all the other lines) are merged in the Console view here.</p>
|
||||||
|
|
||||||
|
<p><strong>Q5. What's with the -k flag?</strong></p>
|
||||||
|
|
||||||
|
<p>The -k flag tells make to continue making other independent rules even when one rule fails.
|
||||||
|
This is helpful for build large projects.</p>
|
||||||
|
<p>You can remove the -k flag by turning on Project Properties > C/C++ Make Project > Make Builder > Stop on first build error</p>
|
||||||
|
|
||||||
|
<p><strong>Q6. My Console view looks like:</strong></p>
|
||||||
|
<pre>
|
||||||
|
mingw32-make clean all
|
||||||
|
process_begin: CreateProcess((null), rm -f Test1.o Test2.o Main.o test_me.exe, ...) failed.
|
||||||
|
make (e=2): The system cannot find the file specified.
|
||||||
|
|
||||||
|
mingw32-make: *** [clean] Error 2
|
||||||
|
rm -f Test1.o Test2.o Main.o test_me.exe
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
<p>This means that mingw32-make was unable to find the utility "rm". Unfortunately, MinGW does not come with "rm". To correct this, replace the clean rule in your Makefile with:</p>
|
||||||
|
<p><pre>
|
||||||
|
clean :
|
||||||
|
-del $(REBUILDABLES)
|
||||||
|
echo Clean done
|
||||||
|
</pre></p>
|
||||||
|
<p>The leading minus sign tells make to consider the clean rule to be successful even if the del command returns failure. This may be acceptable since the del command will fail if the specified files to be deleted do not exist yet (or anymore).</p>
|
||||||
|
|
||||||
|
|
||||||
|
<p><img src="../images/ng00_04a.gif" ALT="IBM Copyright Statement" ></p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,40 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<title>Open Declaration</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Open Declaration</h1>
|
||||||
|
|
||||||
|
<p>You can select an element name in your code and quickly navigate to its declaration.</p>
|
||||||
|
|
||||||
|
<img src="../images/openDeclaration.png" alt="Editor View showing Open Declaration option">
|
||||||
|
|
||||||
|
<p>Open declaration will attempt to navigate to the exact definition of the selected element if the selected element is a reference or a declaration.
|
||||||
|
Otherwise, it will attempt to navigate to a declaration of the selected element.
|
||||||
|
Open declaration requires your file to have the proper include paths set up to the declaration.
|
||||||
|
If for any reason open declaration cannot find the declaration, it will display the following message in the status line:</p>
|
||||||
|
|
||||||
|
<img src="../images/open_declaration_error.png" alt="No declaration was found message.">
|
||||||
|
|
||||||
|
<p>For more information see <a href="../tasks/cdt_t_sd.htm">Setting up include paths and macros for C/C++ indexer</a>.</p>
|
||||||
|
|
||||||
|
<p><img src="../images/ngconcepts.gif" ALT="Related concepts" width="143" height="21"> <br>
|
||||||
|
<a href="cdt_c_projects.htm">C/C++ Projects</a><br>
|
||||||
|
<a href="cdt_c_search.htm">C/C++ search</a></p>
|
||||||
|
<p><img src="../images/ngtasks.gif" ALT="Related tasks" width="143" height="21"> <br>
|
||||||
|
<a href="../tasks/cdt_t_sd.htm">Setting up include paths and macros for C/C++ indexer</a><br>
|
||||||
|
<a href="../tasks/cdt_t_open_declarations.htm">Navigate to a C or C++ element's declaration</a><br>
|
||||||
|
<a href="../tasks/cdt_t_search.htm">Searching for C/C++ elements</a></p>
|
||||||
|
|
||||||
|
<p><img src="../images/ng00_07.gif" ALT="IBM Copyright Statement" width="324" height="14"> </p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
|
@ -0,0 +1,131 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<title>Outline view</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Outline view </h1>
|
||||||
|
|
||||||
|
<p>The Outline view displays an outline of a structured C/C++ file that is currently
|
||||||
|
open in the editor area, by listing the structural elements. </p>
|
||||||
|
|
||||||
|
<img src="../images/outlineView.png" alt="Editor View highlighting corresponding element in the Outline View"></li>
|
||||||
|
|
||||||
|
<p>The Outline view shows the following elements in the source file in the order
|
||||||
|
in which they occur:</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li>Class</li>
|
||||||
|
<li>Namespace</li>
|
||||||
|
<li>Include</li>
|
||||||
|
<li>Enum</li>
|
||||||
|
<li>Enumerator</li>
|
||||||
|
<li>Field private</li>
|
||||||
|
<li>Field protected</li>
|
||||||
|
<li>Field public</li>
|
||||||
|
<li>Include</li>
|
||||||
|
<li>Method private</li>
|
||||||
|
<li>Method protected</li>
|
||||||
|
<li>Method public</li>
|
||||||
|
<li>Struct</li>
|
||||||
|
<li>Typedef</li>
|
||||||
|
<li>Union</li>
|
||||||
|
<li>Variable</li>
|
||||||
|
<li>Function</li>
|
||||||
|
<li>Macro Definition</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<p>You can also sort the list
|
||||||
|
alphabetically. When you select an element in the Outline view, the C/C++
|
||||||
|
editor highlights both the selected item and the marker bar (left margin). For example, to move
|
||||||
|
to the start of main() in the C/C++ editor, click <samp>main()</samp> in the Outline
|
||||||
|
view.</p>
|
||||||
|
|
||||||
|
<p>For more information about the marker bar, see <strong>Workbench User Guide > Reference > User interface
|
||||||
|
information > Views and editors > Editor area</strong>.</p>
|
||||||
|
|
||||||
|
<h2>Filtering the Outline View</h2>
|
||||||
|
|
||||||
|
<p>You can filter the Outline view by choosing to display or hide the following
|
||||||
|
items:</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li>Fields</li>
|
||||||
|
<li>Static members</li>
|
||||||
|
<li>Non-public members</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<p>You can select an element in the Outline view, and perform the following actions:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Open the C/C++ Search window box. The Search string box is populated and
|
||||||
|
the element type is selected.</li>
|
||||||
|
<li>Complete a text-based search, of a workspace or a specified working set for the
|
||||||
|
selected element.</li>
|
||||||
|
<li>Open a selected .h file in the editor.</li>
|
||||||
|
<li>Rename Refactor</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>Icons</h2>
|
||||||
|
<p><table border="1" cellpadding="5" cellspacing="0" style="border-collapse: collapse" bordercolor="#DDDDDD" width="34%">
|
||||||
|
<tr>
|
||||||
|
<th style="width:19%" id="icon"><strong>Icon</strong></th>
|
||||||
|
<th style="width:81%" id="description"><strong>Description</strong></th>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="text-align:center;" headers="icon"><img src="../images/icon_collapse_all.png" alt="Collapse All Icon" width="16" height="16"></td>
|
||||||
|
<td headers="description">Collapse All</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="text-align:center;" headers="icon"><img src="../images/alphab_sort_co.gif" alt="Sort items alphabetically Icon" width="16" height="16"></td>
|
||||||
|
<td headers="description">Sort items alphabetically</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="text-align:center;" headers="icon"><img src="../images/fields_co.gif" alt="Hide Fields Icon" width="16" height="16"></td>
|
||||||
|
<td headers="description">Hide Fields</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="text-align:center;" headers="icon"><img src="../images/static_co.gif" alt="Hide Static Members Icon" width="16" height="16"></td>
|
||||||
|
<td headers="description">Hide Static Members </td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="text-align:center;" headers="icon"><img src="../images/public_co.gif" alt="Hide Non-Public Members Icon" width="16" height="16"></td>
|
||||||
|
<td headers="description">Hide Non-Public Members </td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="text-align:center;" headers="icon"><img src="../images/icon_hide_inactive_includes.png" alt="Hide Inactive Elements Icon" width="16" height="16"></td>
|
||||||
|
<td headers="description">Hide Inactive Elements </td>
|
||||||
|
</tr>
|
||||||
|
</table></p>
|
||||||
|
|
||||||
|
<p>For more information about the Eclipse workbench, see <strong>Workbench User Guide > Tasks > Upgrading Eclipse</strong>.</p>
|
||||||
|
<p>For more information about Working sets, see <strong>Workbench User Guide > Concepts > Working sets</strong>.</p>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<p><img src="../images/ngconcepts.gif" ALT="Related concepts" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="cdt_c_comments.htm">Comments</a><br>
|
||||||
|
<a href="cdt_c_content_assist.htm">Content Assist and code completion</a><br>
|
||||||
|
<a href="cdt_c_search.htm">C/C++ search</a><br>
|
||||||
|
<a href="cdt_c_open_declarations.htm">Open Declaration</a><br>
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/ngtasks.gif" ALT="Related tasks" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../tasks/cdt_t_show_proj_files.htm">Displaying C/C++ file components in the
|
||||||
|
Project Explorer view</a><br>
|
||||||
|
<a href="../tasks/cdt_t_search.htm">Searching for C/C++ elements</a></p>
|
||||||
|
<p><img src="../images/ngref.gif" ALT="Related reference" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../reference/cdt_u_outline_view.htm">Outline view</a><br>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<img src="../images/ng00_07.gif" ALT="IBM Copyright Statement" >
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
|
@ -0,0 +1,92 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<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 overview</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>CDT Overview</h1>
|
||||||
|
<p>The C/C++ Development Toolkit (CDT) is a set of Eclipse plug-ins that provide
|
||||||
|
C and C++ extensions to the Eclipse workbench. For more information about
|
||||||
|
Eclipse, see <strong>Workbench User Guide > Concepts > Workbench</strong>.</p>
|
||||||
|
|
||||||
|
<p>The full CDT provides a C/C++ IDE that simplifies many of the same tools that you can use from the command line. The CDT can also communicate with many external utilities and interpret their responses, for example:
|
||||||
|
<ul>
|
||||||
|
<li>Build (such as make).</li>
|
||||||
|
<li>Compile (such as gcc). For more information, see <a href="http://gcc.gnu.org">http://gcc.gnu.org</a>.</li>
|
||||||
|
<li>Debug (such as gdb). For more information, see <a href="http://sources.redhat.com/gdb/">http://sources.redhat.com/gdb/</a>.</li>
|
||||||
|
</ul>
|
||||||
|
<strong>Note: </strong> while make, gcc and gdb are the examples used in the documentation, virtually any similar set of tools or utilities could be used.</p>
|
||||||
|
|
||||||
|
<p>The Stand-alone Debugger application is built from various Eclipse plug-ins from the CDT pertaining to Debug and Edit. Plug-ins associated
|
||||||
|
with Build and Compile are not included. Though it is possible to edit files within the Stand-alone Debugger, any changes
|
||||||
|
will require a rebuild which will have to be performed outside of the Debugger. If you want a full C/C++ IDE, then it is suggested to use the full CDT
|
||||||
|
instead which incorporates the C/C++ Debugger within it.</p>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
<p>The Stand-alone Debugger opens in the Debug perspective of the Eclipse workbench. The
|
||||||
|
C/C++ perspective consists of an editor and the following
|
||||||
|
views:</p>
|
||||||
|
<dl>
|
||||||
|
<dt>Project Explorer</dt><dd>Shows all of the file system's files under your workspace directory.</dd>
|
||||||
|
<dt>Console</dt><dd>Displays your program's output, as well as the output from your build and external tool chain.</dd>
|
||||||
|
<dt>Editor</dt><dd>The C/C++ editor view provides specialized features for editing C/C++ related files.</dd>
|
||||||
|
<dt>Make Targets</dt><dd>Enables you to select the make targets you want to build in your workspace.</dd>
|
||||||
|
<dt>Outline</dt><dd>Displays the structure of the file currently open in an editor.</dd>
|
||||||
|
<dt>Problems View</dt><dd>If you encounter any errors during a build they will be displayed in the Problems view.</dd>
|
||||||
|
<dt>Properties</dt><dd>Shows the attributes of the item currently selected in a view or an editor.</dd>
|
||||||
|
<dt>Search</dt><dd>Shows the results of searches for files or text.</dd>
|
||||||
|
<dt>Tasks</dt> <dd>Lists tasks that you want to keep track of, either as a schedule of things to do or a history of things that have been done.</dd>
|
||||||
|
</dl>
|
||||||
|
<p>For more information, see <strong>Workbench User Guide > Concepts > Perspectives</strong>.</p>
|
||||||
|
|
||||||
|
<h2>CDT updates</h2>
|
||||||
|
|
||||||
|
<p>The <strong>Install/Update</strong> wizard provides information about your current Eclipse installation and provides the framework to manage your updates.
|
||||||
|
For more information, see <strong>Workbench User Guide > Tasks > Updating and installing software</strong>.</p>
|
||||||
|
|
||||||
|
<p>To view a list of the updates available for the toolsets that you
|
||||||
|
installed, click <strong>Help > Check for Updates</strong>.</p>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<h3>Additional information</h3>
|
||||||
|
|
||||||
|
<p>For more information on the Eclipse CDT project,
|
||||||
|
refer to <a href="http://www.eclipse.org/cdt/">http://www.eclipse.org/cdt/</a>:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li><a href="news://news.eclipse.org/eclipse.tools.cdt" target="_top">CDT newsgroup</a>:
|
||||||
|
The place to ask questions about how to use the CDT.</li>
|
||||||
|
<li><a href="http://wiki.eclipse.org/index.php/CDT/User/FAQ">User FAQ</a>:
|
||||||
|
Provides answers to the most common questions about using the CDT.</li>
|
||||||
|
<li><a href="http://wiki.eclipse.org/index.php/CDT">CDT Wiki</a>:
|
||||||
|
This is the main source for information around CDT.</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<h3>License</h3>
|
||||||
|
<p>The CDT is an open source project and is licensed under the <a href="http://www.eclipse.org/legal/epl-v10.html">Eclipse Public License</a>.
|
||||||
|
|
||||||
|
<!--
|
||||||
|
<p>
|
||||||
|
<img src="../images/ngconcepts.gif" ALT="Related concepts" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../getting_started/cdt_w_existing_code.htm">Working with existing code</a><br>
|
||||||
|
<a href="cdt_c_whatsnew.htm">What's new</a></p>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<p><img src="../images/ngref.gif" ALT="Related reference" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../reference/cdt_o_views.htm">Views</a></p>
|
||||||
|
|
||||||
|
<img src="../images/ng00_07.gif" ALT="IBM Copyright Statement" >
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
|
@ -0,0 +1,46 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
|
||||||
|
<meta name="ProgId" content="FrontPage.Editor.Document">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<title>Debug overview</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Debug overview</h1>
|
||||||
|
|
||||||
|
<p>The debugger lets you see what's going on "inside" a program while it
|
||||||
|
executes.</p>
|
||||||
|
<p>In order to debug your application, you must use executables compiled for
|
||||||
|
debugging. These executables contain additional debug information that lets the
|
||||||
|
debugger make direct associations between the source code and the binaries
|
||||||
|
generated from that original source.</p>
|
||||||
|
<p>The Stand-alone debugger uses GDB as the underlying debug engine. It translates each
|
||||||
|
user interface action into a sequence of GDB commands and processes the output from GDB to
|
||||||
|
display the current state of the program being debugged. </p>
|
||||||
|
<p><strong>Tip:</strong> Editing the source after compiling causes the line numbering to be out of
|
||||||
|
step because the debug information is tied directly to the source. Similarly,
|
||||||
|
debugging optimized binaries can also cause unexpected jumps in the execution
|
||||||
|
trace.</p>
|
||||||
|
<p><img src="../images/ngconcepts.gif" ALT="Related concepts" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="cdt_c_over_cdt.htm">Overview of the CDT</a><br>
|
||||||
|
<a href="cdt_c_dbg_info.htm">Debug information</a></p>
|
||||||
|
<p><img src="../images/ngtasks.gif" ALT="Related tasks" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../tasks/cdt_o_debug.htm">Debugging</a><br>
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/ngref.gif" ALT="Related reference" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../reference/cdt_o_run_dbg_pages.htm">Run and Debug dialog box</a></p><p>
|
||||||
|
|
||||||
|
<img src="../images/ng00_04a.gif" ALT="IBM Copyright Statement" > </p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
|
@ -0,0 +1,76 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||||
|
<title>Perspectives available to C/C++ developers</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Perspective</h1>
|
||||||
|
|
||||||
|
<p>A perspective is a layout of <a href="cdt_c_views.htm">views</a> (development tools) in the Workbench window.
|
||||||
|
Each type of perspective is a combination of views, menus, and toolbars that enable you to perform a particular task.
|
||||||
|
In the Stand-alone Debugger, you only have the choice of the <strong>Debug</strong> perspective which has views that
|
||||||
|
enable you to debug programs. When ever you use the Stand-alone Debugger, you will be placed into the <strong>Debug</strong>
|
||||||
|
perspective.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div class="note">
|
||||||
|
<strong>Selecting / Opening Views:</strong>
|
||||||
|
<ul>
|
||||||
|
<li>You can add views to the perspective. From the menu bar choose <strong>Window > Show View</strong> and open a category then select a new view from the <strong>Show View</strong> dialog.</li>
|
||||||
|
<li>To reset the <strong>Debug</strong> perspective to its original layout, from the menu bar choose <strong>Window > Reset Perspective</strong>.</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<p>The C/C++ development tools contribute the following perspectives to the workbench:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
<p>There a several additional views that may be useful during a debug session. You can add them by clicking <strong>Window > Show View > C/C++</strong> to show them in the C/C++ perspective.</p>
|
||||||
|
<h2>Debug perspective views</h2>
|
||||||
|
|
||||||
|
<p>The Debug perspective is tuned for debugging your C/C++ program.
|
||||||
|
By default it includes an editor area and the following views:
|
||||||
|
</p>
|
||||||
|
<ul>
|
||||||
|
<li><a href="../reference/cdt_u_dbg_view.htm">Debug</a></li>
|
||||||
|
<li>Variables</li>
|
||||||
|
<li>Breakpoints</li>
|
||||||
|
<li><a href="../reference/cdt_u_outline_view.htm">Outline</a></li>
|
||||||
|
<li><a href="../reference/cdt_u_console_view.htm">Console</a></li>
|
||||||
|
<li>Tasks</li>
|
||||||
|
<li><a href="../reference/cdt_u_problems_view.htm">Problems</a></li>
|
||||||
|
<li><a href="../reference/cdt_u_view_executables.htm">Executables</a></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<p>There a several additional views that may be useful during a debug session. You can add them by clicking <strong>Window > Show View > Debug</strong> to show them in the Debug perspective.</p>
|
||||||
|
|
||||||
|
<h2>Additional C/C++ views</h2>
|
||||||
|
|
||||||
|
<p>There are some additional C/C++ views that are provided that may be accessed using <strong>Window > Show View > C/C++</strong>.
|
||||||
|
These will normally not be needed for debugging but may be helpful if there are problems and the user has an understanding
|
||||||
|
of the full CDT IDE. The additional views are:
|
||||||
|
</p>
|
||||||
|
<ul>
|
||||||
|
<li><a href="../reference/cdt_u_cproj_view.htm">C/C++ Projects</a></li>
|
||||||
|
<li>C/C++ Index view</li>
|
||||||
|
<li>Call Hierarchy</li>
|
||||||
|
<li>Include Browser</li>
|
||||||
|
<li>Type Hierarchy</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<p><img src="../images/ngref.gif" ALT="Related reference" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../reference/cdt_o_views.htm">C/C++ Views and Editors</a></p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<img src="../images/rh03_04.gif" ALT="Red Hat Copyright Statement"><br>
|
||||||
|
<img src="../images/ng00_04a.gif" ALT=" IBM Copyright Statement" >
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,66 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||||
|
<title>Project file views</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Project file views</h1>
|
||||||
|
|
||||||
|
<p>Projects files and elements are displayed in the C/C++ Projects view and in the ProjectExplorer view.</p>
|
||||||
|
|
||||||
|
<h2>C/C++ Projects view</h2>
|
||||||
|
<p>Displays, in a tree structure, only elements relevant to C and C++ projects. In this view you can do the following:
|
||||||
|
<ul>
|
||||||
|
<li>Browse the elements of C/C++ source files</li>
|
||||||
|
<!-- <li>Build Targets</li> -->
|
||||||
|
<!-- <li>Create new projects, classes, files, or folders</li> -->
|
||||||
|
<li>Import or Export files and projects</li>
|
||||||
|
<li>Manage existing files (cut, paste, delete, move or rename)</li>
|
||||||
|
<li>Open files in the editor view</li>
|
||||||
|
<li>Open projects in a new window</li>
|
||||||
|
<!-- <li>Refactor</li> -->
|
||||||
|
<li>Restore deleted files from local history</li>
|
||||||
|
<li>Search</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
Files that you select in the C/C++ Projects view affect the information that is displayed in other views.</p>
|
||||||
|
|
||||||
|
<img src="../images/view_projects.png" alt="C/C++ Projects View">
|
||||||
|
|
||||||
|
<h2>Project Explorer view</h2>
|
||||||
|
|
||||||
|
<p>The Project Explorer view provides a hierarchical view of all the resources in the workbench, not just your C/C++ resources.
|
||||||
|
From this view, you can open files for editing or select resources for operations such as exporting. </p>
|
||||||
|
|
||||||
|
<p>Right-click any resource in the Project Explorer view to open a pop-up menu from which you can perform operations such as
|
||||||
|
copy, move, create new resources, compare resources, or perform team operations. For a description of what each menu
|
||||||
|
item does, select an item and press F1. </p>
|
||||||
|
|
||||||
|
<p>The Project Explorer view is provided by the Eclipse Platform. <!-- See the <a href="PLUGINS_ROOT/org.eclipse.platform.doc.user/reference/ref-27.htm">Workbench User Guide</a> for more information.</p> -->
|
||||||
|
|
||||||
|
<!-- <p><img src="../images/ngconcepts.gif" ALT="Related concepts" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="cdt_c_projects.htm">CDT Projects</a><br>
|
||||||
|
<a href="../getting_started/cdt_w_existing_code.htm">Working with existing code</a></p>
|
||||||
|
<p><img src="../images/ngtasks.gif" ALT="Related tasks" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../tasks/cdt_t_proj_new.htm">Creating a project</a><br>
|
||||||
|
<a href="../tasks/cdt_t_proj_new_with_template.htm">Creating a project via a project template</a><br>
|
||||||
|
<a href="../tasks/cdt_o_proj_files.htm">Working with C/C++ project files</a></p>
|
||||||
|
<p><img src="../images/ngref.gif" ALT="Related reference" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
-->
|
||||||
|
<a href="../reference/cdt_u_icons.htm">C/C++ perspective icons</a></p>
|
||||||
|
<p>
|
||||||
|
|
||||||
|
<img src="../images/ng00_07.gif" ALT="IBM Corporation Statement" ></p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
|
@ -0,0 +1,42 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<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>
|
||||||
|
<div role="main">
|
||||||
|
<h1>C/C++ projects</h1>
|
||||||
|
|
||||||
|
<p>Normally, before you can work with plug-ins provided by the CDT, you must create an Eclipse project to store your
|
||||||
|
source code, makefiles, binaries, and related files. However, when you use the Stand-alone Debugger, a project is created
|
||||||
|
for your executable automatically (usually the <strong>Executables</strong> project if only dealing with one executable).
|
||||||
|
The project created on your behalf just contains the executable and links to the source files specified in the debug
|
||||||
|
info. In most cases, you do not need to know about the project to debug, but if you wish to see the various files used
|
||||||
|
and browse them directly with the editor, you can find the project in the C/C++ Projects view. While you are allowed to import
|
||||||
|
files into the C/C++ project, this action is normally used for adding files to a project that can build. Since the Stand-alone
|
||||||
|
Debugger does not contain CDT (C/C++ Developer Tools) build capability, adding files does nothing to aid in debugging and can
|
||||||
|
confuse the indexer if the source has errors in it.</p>
|
||||||
|
|
||||||
|
|
||||||
|
<p><img 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>
|
||||||
|
<p><img src="../images/ngtasks.gif" ALT="Related tasks" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../tasks/cdt_o_proj_files.htm">Working with C/C++ project files</a><br>
|
||||||
|
</p>
|
||||||
|
<p><img 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/ng00_04a.gif" ALT="IBM Copyright Statement" >
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
|
@ -0,0 +1,108 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta name="copyright" content="Copyright (c) Andrew Gvozdev and others 2013,2013. This page is made available under license. For full details, see the LEGAL section in the documentation that contains this page.">
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<title>Scanner Discovery</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div>
|
||||||
|
<h1>Scanner Discovery</h1>
|
||||||
|
<p>
|
||||||
|
|
||||||
|
<h2>General</h2>
|
||||||
|
<strong>Scanner Discovery</strong> (sometimes called <strong>Autodiscovery</strong>) is a method of finding include paths and predefined preprocessor macros which the compiler uses during compilation of the code.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Even a simplest C/C++ program just printing "Hello World" needs to include system headers. Consider:
|
||||||
|
</p>
|
||||||
|
<pre>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
|
||||||
|
int main(void) {
|
||||||
|
puts("!!!Hello World!!!");
|
||||||
|
return EXIT_SUCCESS;
|
||||||
|
}
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Indexer needs to be able to find headers <span class="typewriter">stdio.h</span> and <span class="typewriter">stdlib.h</span> and parse them to provide accurate index.
|
||||||
|
In this example, the headers define prototype of function <span class="typewriter">puts</span> and macro <span class="typewriter">EXIT_SUCCESS</span>.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
<p>
|
||||||
|
The Stand-alone Debugger will try to discover include paths and preprocessor symbols automatically.
|
||||||
|
There are 2 main ways to discover those:
|
||||||
|
</p>
|
||||||
|
<ol>
|
||||||
|
<li><strong>Built-in</strong> Settings.
|
||||||
|
The debugger will try to detect built-in compiler symbols and include paths running the compiler with special options and parse the output of this special run.
|
||||||
|
Most compilers provide such an option to print built-in include paths and symbols. Built-in settings are implied and do not get passed to the compiler during regular compilation.
|
||||||
|
</li>
|
||||||
|
<li><strong>Build Output Parser (BOP)</strong>.
|
||||||
|
Another method that the debugger employs is to analyze build output you provide to its Build Output Parser.
|
||||||
|
Often, include paths are supplied to the compiler with <span class="typewriter">-I</span> options, and macros with <span class="typewriter">-D</span> options
|
||||||
|
and BOP will try to find those in the output.
|
||||||
|
That method relies on verbose build output of your build where all these options are actually printed by make. To
|
||||||
|
specify build output either use the <strong>-b</strong> command-line option or else specify the location of the
|
||||||
|
build log when using the <strong>File > New Executable...</strong> dialog.
|
||||||
|
</li>
|
||||||
|
</ol>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
The debugger uses <strong>Language Settings Providers</strong> to discover the settings (starting with version CDT 8.1). Typically Language settings Providers are specialized.
|
||||||
|
One will provide built-in compiler settings and another one settings detected by Build output Parser.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
The setting entries found by Scanner Discovery can be inspected in project properties on "Preprocessor Include Paths, Macros etc." page.
|
||||||
|
Each Language Settings Provider can be expanded to show the entries it discovered.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<img src="../images/scanner_discovery/sd_prop_entries.png" alt="Preprocessor Include Paths and Macros Entries">
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
<p>
|
||||||
|
If information retrieved by auto-discovery is insufficient a user can enter additional include paths and macros manually under "User Settings Entries".
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>Console View</h2>
|
||||||
|
<p>
|
||||||
|
The output of built-in compiler specs detectors can be inspected to troubleshoot problems running the command.
|
||||||
|
To do so, enable checkbox "Allocate console in the Console View".
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<img src="../images/scanner_discovery/sd_specs_detector_options.png" alt="Spec Detectors Properties"></img>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
When checkbox "Allocate console in the Console View" is enabled, output of each run of the provider will be directed to a special console in the Console View.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<img src="../images/scanner_discovery/sd_console_view.png" alt="Console View"></img>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p><img src="../images/ngconcepts.gif" alt="Related concepts" width="143" height="21"><br>
|
||||||
|
<a href="../concepts/cdt_c_indexer.htm">C/C++ Indexer</a><br>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p><img src="../images/ngtasks.gif" alt="Related tasks" width="143" height="21"><br>
|
||||||
|
<a href="../tasks/cdt_t_sd.htm">Setting up include paths and macros for C/C++ indexer</a><br>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p><img src="../images/ngref.gif" alt="Related reference" width="143" height="21"><br>
|
||||||
|
<a href="../reference/cdt_u_pref_build_scanner_discovery.htm">C/C++ Preferences: Scanner Discovery</a><br>
|
||||||
|
<a href="../reference/cdt_u_prop_general_scanner_discovery.htm">C/C++ Project properties: Preprocessor Include Paths, Macros, etc.</a><br>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,275 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<title>C/C++ search</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>C/C++ search</h1>
|
||||||
|
|
||||||
|
<p>You can conduct a fully or partially qualified name search. Further
|
||||||
|
qualifying a search increases the accuracy and relevance of search results. The
|
||||||
|
sections below provide guidance on how to control the scope of your search
|
||||||
|
through the use of search delimiters, correct syntax, and wildcards.</p>
|
||||||
|
|
||||||
|
<p>You can search for:<br>
|
||||||
|
<ul>
|
||||||
|
<li>language constructs within:
|
||||||
|
<ul>
|
||||||
|
<li>projects in your workspace</li>
|
||||||
|
<li>selected resources from various views</li>
|
||||||
|
<li>working sets</li>
|
||||||
|
</ul></li>
|
||||||
|
<li>a working set for references to particular elements</li>
|
||||||
|
<li>declarations of particular elements</li>
|
||||||
|
<li>definitions of particular elements</li>
|
||||||
|
<li>references of particular elements</li>
|
||||||
|
</ul>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
For information on working sets, see <strong>Workbench User Guide > Concepts > Workbench > Working sets</strong><br>
|
||||||
|
|
||||||
|
|
||||||
|
<h2>What you can search for</h2>
|
||||||
|
<p>The table below lists the element types that you can search for and special
|
||||||
|
considerations to note when searching for a given element type. You can search
|
||||||
|
for some or all of the element types matching a search string that you
|
||||||
|
specify. If you choose to search for matching elements, all types, macros, and typdefs are included in the search.</p>
|
||||||
|
<table border="2" cellpadding="2" cellspacing="0" style="border-collapse: collapse" bordercolor="#AAA" width="60%">
|
||||||
|
<tr>
|
||||||
|
<th style="width:25%; text-align:left" id="element"><strong>Element</strong></th>
|
||||||
|
<th style="width:75%; text-align:left" id="note"><strong>Note</strong></th>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:25%" headers="element" valign="top"> Class/Struct</td>
|
||||||
|
<td style="width:75%" headers="note">Searches for classes and structs.<p>You can further qualify
|
||||||
|
the search by specifying "class" or "struct" in front of the name
|
||||||
|
that you are
|
||||||
|
searching for. Specifying "class" or "struct" also allows you to
|
||||||
|
search for anonymous classes and structures.</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:25%" headers="element" valign="top"> Function</td>
|
||||||
|
<td style="width:75%" headers="note">Searches for global functions or functions in a namespace
|
||||||
|
(functions that are not members of a class, struct, or union).<p>You can
|
||||||
|
specify parameters to further qualify your search. When specifying a
|
||||||
|
parameter list, everything between the parentheses should be valid C/C++
|
||||||
|
syntax.</p>
|
||||||
|
<p>Do not specify the return type of the function.</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:25%" headers="element" valign="top"> Variable</td>
|
||||||
|
<td style="width:75%" headers="note">Searches for variables that are not members of a class,
|
||||||
|
struct, or union.</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:25%" headers="element" valign="top"> Union</td>
|
||||||
|
<td style="width:75%" headers="note">Searches for unions.<p>Anonymous unions can be searched for by
|
||||||
|
specifying "union" as the search pattern.</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:25%" headers="element" valign="top"> Method</td>
|
||||||
|
<td style="width:75%" headers="note">Searches for methods that are members of a class, struct, or
|
||||||
|
union.<p>Searching for methods also finds constructors and destructors. See
|
||||||
|
above note for functions.</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:25%" headers="element" valign="top"> Field </td>
|
||||||
|
<td style="width:75%" headers="note">Searches for fields that are members of a class, struct, or
|
||||||
|
union.
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:25%" headers="element" valign="top"> Enumeration</td>
|
||||||
|
<td style="width:75%" headers="note">Searches for enumerations.</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:25%" headers="element" valign="top"> Enumerator</td>
|
||||||
|
<td style="width:75%" headers="note">Searches for enumerators.</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:25%" headers="element" valign="top"> Namespace</td>
|
||||||
|
<td style="width:75%" headers="note">Searches for namespaces.</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<h2>How you can limit your search</h2>
|
||||||
|
|
||||||
|
<p>You can limit your search to one or all of the following:</p>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li>Declarations</li>
|
||||||
|
<li>References</li>
|
||||||
|
<li>Definitions (for functions, methods, variables and fields)</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<p>You can control the scope of the search by specifying which of the following
|
||||||
|
is to be searched:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Workspace</li>
|
||||||
|
<li>Working Set</li>
|
||||||
|
<li>Selected Resources</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>Wildcard characters</h2>
|
||||||
|
<p>You can use wildcard characters to further refine your search.</p>
|
||||||
|
<table border="2" cellpadding="2" cellspacing="0" style="border-collapse: collapse" bordercolor="#AAA" width="60%">
|
||||||
|
<tr>
|
||||||
|
<th style="width:30%; text-align:left" id="char" valign="top"><strong>Use this wildcard character</strong></th>
|
||||||
|
<th style="width:70%; text-align:left" id="search"><strong>To search for this</strong></th>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:30%" headers="char" valign="top"> <samp>*</samp></td>
|
||||||
|
<td style="width:70%" headers="search">Any string<p><strong>Tip:<br>
|
||||||
|
</strong> Use the character sequence <samp>\*</samp> to search for
|
||||||
|
operators that begin with *. See syntax examples in the table below.</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:30%" headers="char" valign="top"> <samp>?</samp></td>
|
||||||
|
<td style="width:70%" headers="search">A single character</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:30%" headers="char" valign="top"> <samp>::</samp></td>
|
||||||
|
<td style="width:70%" headers="search">Nested elements</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
<!-- no support for function parameters
|
||||||
|
<p><strong>Tip: </strong>Do not use wild cards between the brackets of a function or
|
||||||
|
method pattern. For example, the search
|
||||||
|
string <samp>f( * )</samp> is an invalid search that results in a search for any function <samp>f</samp>
|
||||||
|
because
|
||||||
|
the asterisk is interpreted as a pointer rather than a wild card.</p>
|
||||||
|
-->
|
||||||
|
<h2>Syntax examples</h2>
|
||||||
|
<p>The table below provides syntax examples and an explanation for each example
|
||||||
|
to help you conduct an effective search.</p>
|
||||||
|
<table border="2" cellpadding="2" cellspacing="0" style="border-collapse: collapse" bordercolor="#AAA" width="60%">
|
||||||
|
<tr>
|
||||||
|
<th style="width:30%; text-align:left" id="syntax"><strong>Syntax</strong></th>
|
||||||
|
<th style="width:70%; text-align:left" id="search2"><strong>Searches for this</strong></th>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:30%" headers="syntax"> <samp>::*::*::A</samp></td>
|
||||||
|
<td style="width:70%" headers="search2">A nested element two levels deep</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:30%" headers="syntax"> <samp>::*::*::A?</samp></td>
|
||||||
|
<td style="width:70%" headers="search2">Any two-letter name that begins with A and is two levels
|
||||||
|
deep</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:30%" headers="syntax"> <samp>::A</samp> </td>
|
||||||
|
<td style="width:70%" headers="search2">Searches for A not nested in anything</td>
|
||||||
|
</tr>
|
||||||
|
<!-- no support for function parameters
|
||||||
|
<tr>
|
||||||
|
<td style="width:30%" headers="syntax"> <samp>*()</samp></td>
|
||||||
|
<td style="width:70%" headers="search2">Any function taking no parameters</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:30%" headers="syntax"> <samp>*( A * )</samp> </td>
|
||||||
|
<td style="width:70%" headers="search2">Any function taking 1 parameter that is a pointer to type
|
||||||
|
A</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:30%" headers="syntax"> <samp>f( int * )</samp></td>
|
||||||
|
<td style="width:60%" headers="search2">Will search for function f taking 1 parameter that is an
|
||||||
|
int *</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:30%" headers="syntax"> <samp>f( const char [
|
||||||
|
], A & )</samp></td>
|
||||||
|
<td style="width:60%" headers="search2">Will search for a function f, taking 2 parameters; one is a
|
||||||
|
const char array, the other is a reference to type A</td>
|
||||||
|
</tr>
|
||||||
|
-->
|
||||||
|
<tr>
|
||||||
|
<td style="width:30%" headers="syntax"> <samp>operator \*</samp></td>
|
||||||
|
<td style="width:60%" headers="search2">Finds only operator *</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:30%" headers="syntax"> <samp>operator \*=</samp></td>
|
||||||
|
<td style="width:60%" headers="search2">Finds only operator *=</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:30%" headers="syntax"> <samp>operator *</samp></td>
|
||||||
|
<td style="width:60%" headers="search2">Finds all operators</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:30%" headers="syntax"> <samp>class</samp></td>
|
||||||
|
<td style="width:60%" headers="search2">Searches for anonymous classes</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:30%" headers="syntax"> <samp>struct</samp></td>
|
||||||
|
<td style="width:60%" headers="search2">Searches for anonymous structs</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="width:30%" headers="syntax"> <samp>union</samp></td>
|
||||||
|
<td style="width:60%" headers="search2">Searches for anonymous unions</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
<h2>Search results</h2>
|
||||||
|
<p>Search results are displayed in the Search view. You can sort your search by Name, Parent Name and Path. You can also repeat
|
||||||
|
your last search.</p>
|
||||||
|
|
||||||
|
<h2>Search Concepts</h2>
|
||||||
|
|
||||||
|
<h3>Declarations</h3>
|
||||||
|
<p>According to the ANSI C++ Spec, a declaration is a statement that <Q>introduces a name into a translation unit or re-declares a name that has been previously introduced by a previous declaration</Q>.</p>
|
||||||
|
<p>All C/C++ search elements can be searched for declarations.</p>
|
||||||
|
|
||||||
|
<h3>Definitions</h3>
|
||||||
|
<p>Most declarations are also definitions; in other words, they also define the entity for they declare the name for. However there are some elements that can have separate definitions from their declarations.</p>
|
||||||
|
<p>For C/C++ search the following elements can be searched for definitions:
|
||||||
|
<ul>
|
||||||
|
<li>Functions/Methods - the definition is where the code implementation resides</li>
|
||||||
|
<li>Variable:
|
||||||
|
<ol>
|
||||||
|
<li>Extern - the definition is where the variable is initialized</li>
|
||||||
|
<li>Non extern - the definition of a variable is where it is declared </li>
|
||||||
|
</ol></li>
|
||||||
|
<li>Field:
|
||||||
|
<ol>
|
||||||
|
<li>Static fields - the definition of a static field is where it gets initialized</li>
|
||||||
|
<li>Non static fields - the definition corresponds to the fields declaration</li>
|
||||||
|
</ol></li>
|
||||||
|
<li>Namespace - the definition of a namespace is the same as its declaration</li>
|
||||||
|
</ul></p>
|
||||||
|
|
||||||
|
<h3>References</h3>
|
||||||
|
<p>By selecting references, C/C++ search will return all of the places the selected element is used.</p>
|
||||||
|
|
||||||
|
<h3>All Occurrences</h3>
|
||||||
|
<p>Selecting 'All Occurrences' in the Limit To section will result in a search for declarations, definitions (if applicable) and references for whatever element or elements have been selected.</p>
|
||||||
|
|
||||||
|
<h3>Any Element</h3>
|
||||||
|
<p>Selecting 'Any Element' in the Search For section will result in a search for all of the listed elements plus macros and typedefs.</p>
|
||||||
|
|
||||||
|
|
||||||
|
<p>For more information, see:<ul>
|
||||||
|
<li> <strong>Workbench User Guide > Concepts > Views > Search view</strong></li>
|
||||||
|
<li> <strong>Workbench User Guide > Tasks > Navigating and finding resources</strong></li>
|
||||||
|
</ul>
|
||||||
|
<p><img src="../images/ngconcepts.gif" ALT="Related concepts" width="143" height="21"><br>
|
||||||
|
<a href="../concepts/cdt_c_indexer.htm">C/C++ Indexer</a><br>
|
||||||
|
<a href="cdt_c_projects.htm">C/C++ Projects</a><br>
|
||||||
|
<a href="cdt_c_open_declarations.htm">Open Declaration</a><br>
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/ngtasks.gif" ALT="Related tasks" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../tasks/cdt_t_search.htm">Searching for C/C++ elements</a><br>
|
||||||
|
<a href="../tasks/cdt_t_open_declarations.htm">Navigating to C/C++ declarations</a><br>
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/ngref.gif" ALT="Related reference" width="143" height="21"> <br>
|
||||||
|
<a href="../reference/cdt_u_search.htm">C/C++ search page, Search dialog box</a><br>
|
||||||
|
<a href="../reference/cdt_u_icons.htm">C/C++ perspective icons</a></p><p>
|
||||||
|
|
||||||
|
<img src="../images/ng00_07.gif" ALT="IBM Copyright Statement" ></p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
|
@ -0,0 +1,47 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<title>Introduction</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Introduction</h1>
|
||||||
|
<p>The Stand-alone Debugger is an Eclipse application which packages the
|
||||||
|
Eclipse plug-ins from the CDT (C/C++ Development Tools) project into an
|
||||||
|
application that can be started from a command-line script. The debugger
|
||||||
|
removes some of the plug-ins that would be found in the full CDT set that
|
||||||
|
are related to building and project set-up. This simplifies the UI for
|
||||||
|
the end-user who is only interested in debugging and is not interested in
|
||||||
|
using Eclipse to build the application itself.</p>
|
||||||
|
<p>In addition, the Stand-alone debugger helps to simplify debugging in that
|
||||||
|
it hides Eclipse-specific concepts such as the Eclipse project and launch
|
||||||
|
configuration. While these concepts are hidden, they still are used underneath
|
||||||
|
and an experienced Eclipse user can still access them. Subsequent documentation
|
||||||
|
here will attempt to point out where such concepts are being automated by the
|
||||||
|
Stand-alone Debugger and how they can still be accessed.</p>
|
||||||
|
|
||||||
|
|
||||||
|
<p><img style="border: 0px solid ; width: 143px; height: 21px;"
|
||||||
|
src="../images/ngconcepts.gif" alt="Related concepts"> <br>
|
||||||
|
<a href="../concepts/cdt_c_over_cdt.htm">CDT Overview</a><br>
|
||||||
|
<a href="../concepts/cdt_c_projects.htm">C/C++ Projects</a><br>
|
||||||
|
<a href="../concepts/cdt_c_perspectives.htm">C/C++ Perspectives</a><br>
|
||||||
|
<a href="../concepts/cdt_c_indexer.htm">C/C++ Indexer</a><br>
|
||||||
|
<a href="../concepts/cdt_c_search.htm">C/C++ Search</a></p>
|
||||||
|
<p><img src="../images/ngref.gif" ALT="Related reference" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../reference/cdt_o_views.htm">Views</a><br>
|
||||||
|
<p><img src="../images/ngtasks.gif" ALT="Related tasks" width="143" height="21">
|
||||||
|
<br>
|
||||||
|
<a href="../tasks/cdt_t_standalone_startup.htm">Starting the debugger</a><br>
|
||||||
|
|
||||||
|
<img src="../images/intl_07.gif" ALT="Intel Copyright Statement" >
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
66
debug/org.eclipse.cdt.debug.application.doc/concepts/cdt_c_templates.htm
Executable file
|
@ -0,0 +1,66 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||||
|
<title>Templates</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
<script type="text/javascript"
|
||||||
|
src="PLUGINS_ROOT/org.eclipse.help/livehelp.js"></script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Templates</h1>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
Templates are sections of code that occur frequently enough that you
|
||||||
|
would like to be able to insert them with a few keystrokes. This
|
||||||
|
function is known as <strong>Content Assist</strong>; the sections of
|
||||||
|
code that are inserted are known as <strong>templates</strong>.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
To insert an existing Content Assist template into a file, such as
|
||||||
|
one for an <strong>if</strong> statement, type the initial character
|
||||||
|
("<span class="typewriter">i</span>" in this case), then press <strong>Ctrl+Space</strong>.
|
||||||
|
The templates that begin with that character appear. Double-click on
|
||||||
|
a template to insert it into a file.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
You can edit the existing Content Assist templates or create new
|
||||||
|
ones using the <img src="../images/command_link.png" alt=""> <a
|
||||||
|
class="command-link"
|
||||||
|
href='javascript:executeCommand("org.eclipse.ui.window.preferences(preferencePageId=org.eclipse.cdt.ui.preferences.TemplatePreferencePage)")'>C/C++
|
||||||
|
> Editor > Templates</a> preference pane.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<img src="../images/ngconcepts.gif" ALT="Related concepts"
|
||||||
|
width="143" height="21"> <br> <a
|
||||||
|
href="cdt_c_over_cdt.htm">CDT Overview</a>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<img src="../images/ngtasks.gif" ALT="Related tasks" width="143"
|
||||||
|
height="21"> <br> <a
|
||||||
|
href="../tasks/cdt_t_add_codetemp.htm">Creating and editing
|
||||||
|
templates</a> <br> <a href="../tasks/cdt_t_contentassist.htm">Using
|
||||||
|
templates</a> <br> <a href="../tasks/cdt_t_imp_code_temp.htm">Importing
|
||||||
|
and exporting templates</a>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<img src="../images/ngref.gif" ALT="Related reference" width="143"
|
||||||
|
height="21"> <br> <a href="../reference/cdt_u_m_edit.htm">Edit
|
||||||
|
menu</a> <br> <a href="../reference/cdt_u_c_editor_con_assist.htm">Content
|
||||||
|
Assist page</a> <br> <a href="../reference/cdt_u_code_temp.htm">Templates
|
||||||
|
page</a>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<img alt="Red Hat Copyright Statement" src="../images/rh03_04.gif"><br>
|
||||||
|
<img alt="IBM Copyright Statement" src="../images/ng00_04a.gif">
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,55 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||||
|
<title>Views in the C/C++ perspective</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>C/C++ Views</h1>
|
||||||
|
|
||||||
|
<p>The C/C++ views are panels that help you perform the tasks involved in managing C/C++ programs.
|
||||||
|
These views can be added to the <a href="cdt_c_perspectives.htm">perspective</a> for your Eclipse window. </p>
|
||||||
|
|
||||||
|
<strong>Changing Views:</strong>
|
||||||
|
<ul>
|
||||||
|
<li>You can add views to a perspective. From the menu bar choose <strong>Window > Show View</strong> and select a new view from one of the
|
||||||
|
categories of views in the Show View dialog.</li>
|
||||||
|
<li>To reset the current perspective to its original layout, from the menu bar choose <strong>Window > Reset Perspective</strong>.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<p>The following views are commonly used in the <strong>C/C++</strong> perspective:</p>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
<dt>Project Explorer</dt><dd>Shows all of the file system's files under your workspace directory.</dd>
|
||||||
|
<dt>Console</dt><dd>Displays your program's output, as well as the output from your build tools.</dd>
|
||||||
|
<dt>Editor</dt><dd>The C/C++ editor view provides specialized features for editing C/C++ related files.</dd>
|
||||||
|
<dt>Outline</dt><dd>Displays the structure of the file currently open in an editor.</dd>
|
||||||
|
<dt>Problems</dt>
|
||||||
|
<dd>If you encounter any errors during a build they will be displayed in the Problems view.</dd>
|
||||||
|
<dt>Properties</dt><dd>Shows the attributes of the item currently selected in a view or an editor.</dd>
|
||||||
|
<dt>Tasks</dt><dd>Lists tasks that want to keep track of, either as a schedule of things to do or a history of things that have been done.</dd>
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
<p><img src="../images/ngconcepts.gif" ALT="Related concepts" width="143" height="21">
|
||||||
|
<br><a href="cdt_c_over_cdt.htm">CDT Overview</a>
|
||||||
|
<br><a href="cdt_c_perspectives.htm">Perspectives</a>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
<p><img src="../images/ngref.gif" ALT="Related reference" width="143" height="21">
|
||||||
|
<br><a href="../reference/cdt_o_views.htm">Views</a>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<img src="../images/rh03_04.gif" ALT="Red Hat Copyright Statement"><br>
|
||||||
|
<img src="../images/ng00_07.gif" ALT=" IBM Copyright Statement" >
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
308
debug/org.eclipse.cdt.debug.application.doc/concepts/cdt_c_whatsnew.htm
Executable file
|
@ -0,0 +1,308 @@
|
||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||||
|
<meta name="keywords" content="CDT/User/NewIn82" />
|
||||||
|
|
||||||
|
<title>CDT 8.2 New and Noteworthy</title>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div>
|
||||||
|
<h1 id="top">CDT 8.2 - New and Noteworthy</h1>
|
||||||
|
<p>See <a href="http://wiki.eclipse.org/CDT/User/NewIn82">What's new in CDT 8.2</a> on the CDT Wiki
|
||||||
|
which may contain more recent information.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<!-- ***** START MANUAL INSERT HTML FROM http://wiki.eclipse.org/CDT/User/NewIn82?action=render -->
|
||||||
|
<table id="toc" class="toc" summary="Contents"><tr><td><div id="toctitle"><h2>Contents</h2></div>
|
||||||
|
<ul>
|
||||||
|
<li class="toclevel-1"><a href="#Editor"><span class="tocnumber">1</span> <span class="toctext">Editor</span></a>
|
||||||
|
<ul>
|
||||||
|
<li class="toclevel-2"><a href="#Organize_Includes_Command"><span class="tocnumber">1.1</span> <span class="toctext">Organize Includes Command</span></a></li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li class="toclevel-1"><a href="#Build"><span class="tocnumber">2</span> <span class="toctext">Build</span></a>
|
||||||
|
<ul>
|
||||||
|
<li class="toclevel-2"><a href="#Console"><span class="tocnumber">2.1</span> <span class="toctext">Console</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Improved_toolchain_detection"><span class="tocnumber">2.2</span> <span class="toctext">Improved toolchain detection</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Scanner_Discovery_.2F_Language_Settings_Providers"><span class="tocnumber">2.3</span> <span class="toctext">Scanner Discovery / Language Settings Providers</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Makefile_Editor"><span class="tocnumber">2.4</span> <span class="toctext">Makefile Editor</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Misc"><span class="tocnumber">2.5</span> <span class="toctext">Misc</span></a></li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li class="toclevel-1"><a href="#Debug"><span class="tocnumber">3</span> <span class="toctext">Debug</span></a>
|
||||||
|
<ul>
|
||||||
|
<li class="toclevel-2"><a href="#Enhanced_Expressions"><span class="tocnumber">3.1</span> <span class="toctext">Enhanced Expressions</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#OS_Resources_View"><span class="tocnumber">3.2</span> <span class="toctext">OS Resources View</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Breakpoint_Filtering"><span class="tocnumber">3.3</span> <span class="toctext">Breakpoint Filtering</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Enhanced_GDB_console_support"><span class="tocnumber">3.4</span> <span class="toctext">Enhanced GDB console support</span></a>
|
||||||
|
<ul>
|
||||||
|
<li class="toclevel-3"><a href="#Breakpoints.2C_watchpoints_and_tracepoints"><span class="tocnumber">3.4.1</span> <span class="toctext">Breakpoints, watchpoints and tracepoints</span></a></li>
|
||||||
|
<li class="toclevel-3"><a href="#Memory_and_variables"><span class="tocnumber">3.4.2</span> <span class="toctext">Memory and variables</span></a></li>
|
||||||
|
<li class="toclevel-3"><a href="#Reverse_debugging_state"><span class="tocnumber">3.4.3</span> <span class="toctext">Reverse debugging state</span></a></li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li class="toclevel-2"><a href="#Breakpoint_actions_to_control_reverse_debugging"><span class="tocnumber">3.5</span> <span class="toctext">Breakpoint actions to control reverse debugging</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Floating_Point_renderer_has_been_added_to_the_memory_package"><span class="tocnumber">3.6</span> <span class="toctext">Floating Point renderer has been added to the memory package</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Debugging_multiple_processes_within_one_debug_session"><span class="tocnumber">3.7</span> <span class="toctext">Debugging multiple processes within one debug session</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Load_information_in_the_Multicore_Visualizer_-_CPU.2Fcore_load_meters"><span class="tocnumber">3.8</span> <span class="toctext">Load information in the Multicore Visualizer - CPU/core load meters</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Edit_Tracepoint_on_Create"><span class="tocnumber">3.9</span> <span class="toctext">Edit Tracepoint on Create</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Step_Into_Selection"><span class="tocnumber">3.10</span> <span class="toctext">Step Into Selection</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Multicore_Visualizer_enhanced_selection_and_filtering"><span class="tocnumber">3.11</span> <span class="toctext">Multicore Visualizer enhanced selection and filtering</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Process_exit_code_shown_in_console"><span class="tocnumber">3.12</span> <span class="toctext">Process exit code shown in console</span></a></li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li class="toclevel-1"><a href="#Important_Notes"><span class="tocnumber">4</span> <span class="toctext">Important Notes</span></a></li>
|
||||||
|
<li class="toclevel-1"><a href="#Bugs_Fixed_in_this_Release"><span class="tocnumber">5</span> <span class="toctext">Bugs Fixed in this Release</span></a></li>
|
||||||
|
</ul>
|
||||||
|
</td></tr></table><script type="text/javascript"> if (window.showTocToggle) { var tocShowText = "show"; var tocHideText = "hide"; showTocToggle(); } </script>
|
||||||
|
<a name="Editor"></a><h2> <span class="mw-headline"> Editor </span></h2>
|
||||||
|
<a name="Organize_Includes_Command"></a><h3> <span class="mw-headline"> Organize Includes Command </span></h3>
|
||||||
|
<p>The <i>Organize Includes</i> command is similar to <i>Organize Imports</i> in Java. It adds missing include statements, removes unnecessary ones, and reorders includes according to user preferences.
|
||||||
|
</p><p><a><img alt="Image:OrganizeIncludes.png" src="../images/cdt82/OrganizeIncludes.png" width="356" height="339" border="0" /></a>
|
||||||
|
</p><p>When determining which header files must be included the <i>Organize Includes</i> command follows the "Include What You Use" rule. See <a href="http://code.google.com/p/include-what-you-use/wiki/WhyIWYU" class="external text" title="http://code.google.com/p/include-what-you-use/wiki/WhyIWYU" rel="nofollow">Why Include What You Use?</a> and <a href="http://code.google.com/p/include-what-you-use/wiki/WhatIsAUse" class="external text" title="http://code.google.com/p/include-what-you-use/wiki/WhatIsAUse" rel="nofollow">What Is a Use?</a>.
|
||||||
|
</p>
|
||||||
|
<a name="Build"></a><h2> <span class="mw-headline"> Build </span></h2>
|
||||||
|
<a name="Console"></a><h3> <span class="mw-headline"> Console </span></h3>
|
||||||
|
<ul><li> Line wrap option on the console (<a href="http://bugs.eclipse.org/199605" class="external text" title="http://bugs.eclipse.org/199605" rel="nofollow">Bug 199605</a>).
|
||||||
|
</li></ul>
|
||||||
|
<p><a><img alt="Image:ConsoleWrapLine.png" src="../images/cdt82/ConsoleWrapLine.png" width="490" height="330" border="0" /></a> <a><img alt="Image:ConsoleWrapLinePreference.png" src="../images/cdt82/ConsoleWrapLinePreference.png" width="635" height="559" border="0" /></a>
|
||||||
|
</p>
|
||||||
|
<a name="Improved_toolchain_detection"></a><h3> <span class="mw-headline"> Improved toolchain detection </span></h3>
|
||||||
|
<ul><li> Automatic detection of MinGW 64 bit (<a href="http://bugs.eclipse.org/380598" class="external text" title="http://bugs.eclipse.org/380598" rel="nofollow">Bug 380598</a>).
|
||||||
|
</li><li> Detection of Visual Studio under Windows 7 64 bit (<a href="http://bugs.eclipse.org/385608" class="external text" title="http://bugs.eclipse.org/385608" rel="nofollow">Bug 385608</a>).
|
||||||
|
</li><li> Recognize $PATH environment variable from workspace preferences for MinGW and Cygwin toolchains (<a href="http://bugs.eclipse.org/384520" class="external text" title="http://bugs.eclipse.org/384520" rel="nofollow">Bug 384520</a>).
|
||||||
|
</li><li> Introduction of environment variables $MINGW_HOME and $CYGWIN_HOME that are recognized in preferences and project properties (<a href="http://bugs.eclipse.org/403257" class="external text" title="http://bugs.eclipse.org/403257" rel="nofollow">Bug 403257</a>, <a href="http://bugs.eclipse.org/357442" class="external text" title="http://bugs.eclipse.org/357442" rel="nofollow">Bug 357442</a>).
|
||||||
|
</li></ul>
|
||||||
|
<p><a><img alt="Image:MINGW_HOME.png" src="../images/cdt82/MINGW_HOME.png" width="825" height="454" border="0" /></a> <a><img alt="Image:CYGWIN_HOME.png" src="../images/cdt82/CYGWIN_HOME.png" width="824" height="462" border="0" /></a>
|
||||||
|
</p>
|
||||||
|
<a name="Scanner_Discovery_.2F_Language_Settings_Providers"></a><h3> <span class="mw-headline"> Scanner Discovery / Language Settings Providers </span></h3>
|
||||||
|
<ul><li> "Preprocessor Include Paths, Macros etc." property page now fully replaces older "Scanner Discovery" page. "Scanner Discovery" is now hidden by default (<a href="http://bugs.eclipse.org/403405" class="external text" title="http://bugs.eclipse.org/403405" rel="nofollow">Bug 403405</a>, <a href="http://bugs.eclipse.org/407087" class="external text" title="http://bugs.eclipse.org/407087" rel="nofollow">Bug 407087</a>).
|
||||||
|
</li></ul>
|
||||||
|
<p><a><img alt="Image:PropertyPageSettingsScannerDiscovery.png" src="../images/cdt82/PropertyPageSettingsScannerDiscovery.png" width="861" height="464" border="0" /></a>
|
||||||
|
</p>
|
||||||
|
<ul><li> Built-in Compiler Settings provider for MinGW is enabled by default now for MinGW toolchain (<a href="http://bugs.eclipse.org/382422" class="external text" title="http://bugs.eclipse.org/382422" rel="nofollow">Bug 382422</a>).
|
||||||
|
</li><li> Added Built-in Compiler Settings provider for Cygwin (<a href="http://bugs.eclipse.org/382423" class="external text" title="http://bugs.eclipse.org/382423" rel="nofollow">Bug 382423</a>).
|
||||||
|
</li></ul>
|
||||||
|
<p><a><img alt="Image:CygwinProvider.png" src="../images/cdt82/CygwinProvider.png" width="836" height="624" border="0" /></a>
|
||||||
|
</p>
|
||||||
|
<ul><li> Project-relative include paths representation was stabilized and now officially supported in UI (<a href="http://bugs.eclipse.org/401734" class="external text" title="http://bugs.eclipse.org/401734" rel="nofollow">Bug 401734</a>).
|
||||||
|
</li><li> Support for project-relative paths for Build Output Providers (<a href="http://bugs.eclipse.org/402023" class="external text" title="http://bugs.eclipse.org/402023" rel="nofollow">Bug 402023</a>).
|
||||||
|
</li><li> Changes in environment variables (preferences or project properties - as applicable) automatically trigger re-discovery (<a href="http://bugs.eclipse.org/403406" class="external text" title="http://bugs.eclipse.org/403406" rel="nofollow">Bug 403406</a>).
|
||||||
|
</li><li> Number of changes to support compatibility with older methods to provide include paths for indexer, namely pathEntryContainers, contributed ScannerInfo entries (<a href="http://bugs.eclipse.org/401961" class="external text" title="http://bugs.eclipse.org/401961" rel="nofollow">Bug 401961</a>, <a href="http://bugs.eclipse.org/398056" class="external text" title="http://bugs.eclipse.org/398056" rel="nofollow">Bug 398056</a>, <a href="http://bugs.eclipse.org/392966" class="external text" title="http://bugs.eclipse.org/392966" rel="nofollow">Bug 392966</a>).
|
||||||
|
</li><li> Fixed compatibility issues related to import older projects (<a href="http://bugs.eclipse.org/393641" class="external text" title="http://bugs.eclipse.org/393641" rel="nofollow">Bug 393641</a>).
|
||||||
|
</li></ul>
|
||||||
|
<a name="Makefile_Editor"></a><h3> <span class="mw-headline"> Makefile Editor </span></h3>
|
||||||
|
<ul><li> GNU Makefile functions highlighting fixed (<a href="http://bugs.eclipse.org/406911" class="external text" title="http://bugs.eclipse.org/406911" rel="nofollow">Bug 406911</a>).
|
||||||
|
</li><li> Bracket matching (<a href="http://bugs.eclipse.org/405279" class="external text" title="http://bugs.eclipse.org/405279" rel="nofollow">Bug 405279</a>).
|
||||||
|
</li></ul>
|
||||||
|
<p><a><img alt="Image:MakeEditorBracketMatching.png" src="../images/cdt82/MakeEditorBracketMatching.png" width="558" height="82" border="0" /></a>
|
||||||
|
</p>
|
||||||
|
<ul><li> Content assist for automatic variables (<a href="http://bugs.eclipse.org/407169" class="external text" title="http://bugs.eclipse.org/407169" rel="nofollow">Bug 407169</a>).
|
||||||
|
</li></ul>
|
||||||
|
<p><a><img alt="Image:MakeEditorContentAssistAutoVars.png" src="../images/cdt82/MakeEditorContentAssistAutoVars.png" width="558" height="370" border="0" /></a>
|
||||||
|
</p>
|
||||||
|
<ul><li> Highlight for conditional variable assignment (<a href="http://bugs.eclipse.org/406596" class="external text" title="http://bugs.eclipse.org/406596" rel="nofollow">Bug 406596</a>).
|
||||||
|
</li><li> Proper colorization of escaped # (<a href="http://bugs.eclipse.org/404599" class="external text" title="http://bugs.eclipse.org/404599" rel="nofollow">Bug 404599</a>).
|
||||||
|
</li></ul>
|
||||||
|
<a name="Misc"></a><h3> <span class="mw-headline"> Misc </span></h3>
|
||||||
|
<ul><li> Ability to specify local includes for indexer, as in [#include "header.h"] as opposed to system includes [#include <header.h>] (<a href="http://bugs.eclipse.org/388368" class="external text" title="http://bugs.eclipse.org/388368" rel="nofollow">Bug 388368</a>).
|
||||||
|
</li><li> Fixed some bugs related to storing environment variables, such as silently ignoring removals or additions (<a href="http://bugs.eclipse.org/348781" class="external text" title="http://bugs.eclipse.org/348781" rel="nofollow">Bug 348781</a>, <a href="http://bugs.eclipse.org/355488" class="external text" title="http://bugs.eclipse.org/355488" rel="nofollow">Bug 355488</a>).
|
||||||
|
</li><li> Improved performance in certain areas (<a href="http://bugs.eclipse.org/405643" class="external text" title="http://bugs.eclipse.org/405643" rel="nofollow">Bug 405643</a>, <a href="http://bugs.eclipse.org/405638" class="external text" title="http://bugs.eclipse.org/405638" rel="nofollow">Bug 405638</a>, <a href="http://bugs.eclipse.org/405744" class="external text" title="http://bugs.eclipse.org/405744" rel="nofollow">Bug 405744</a>, <a href="http://bugs.eclipse.org/407483" class="external text" title="http://bugs.eclipse.org/407483" rel="nofollow">Bug 407483</a>).
|
||||||
|
</li><li> User documentation for Scanner Discovery updated including property page "Preprocessor Includes, Macros" (<a href="http://bugs.eclipse.org/409392" class="external text" title="http://bugs.eclipse.org/409392" rel="nofollow">Bug 409392</a>).
|
||||||
|
</li></ul>
|
||||||
|
<a name="Debug"></a><h2> <span class="mw-headline"> Debug </span></h2>
|
||||||
|
<a name="Enhanced_Expressions"></a><h3> <span class="mw-headline"> Enhanced Expressions </span></h3>
|
||||||
|
<p>The Expressions view has been extended to allow the user to manually create <i>enhanced-expressions</i>. <i>Enhanced-expressions</i> define a set of expressions which can be easily described using glob-pattern matching. The user specifies an <i>enhanced-expression</i> by prefixing it with '='. For example:
|
||||||
|
</p>
|
||||||
|
<ul><li>pattern-matched sorted groups of local variables, where the symbols * [] ? can be used e.g.,
|
||||||
|
</li></ul>
|
||||||
|
<pre>=v?r -- Will show local variables starting with a 'v' and ending with 'r' with a single character in between
|
||||||
|
=* -- Will show all local variables of the selected stack frame in sorted order (the '=' is optional for this expression, i.e., '*')
|
||||||
|
=*x -- Will show local variables ending with 'x'
|
||||||
|
</pre>
|
||||||
|
<ul><li>array ranges including glob-expressions
|
||||||
|
</li></ul>
|
||||||
|
<pre>=array[30-40] -- Will show array elements from 30 to 40
|
||||||
|
=array[1-5,20,30-31] -- Will show array elements from 1 to 5, 20 and 30 to 31
|
||||||
|
=array?[1-5] -- Will show array elements from 1 to 5 for any array starting with 'array' followed by a single character
|
||||||
|
</pre>
|
||||||
|
<ul><li>pattern-matched sorted registers groups, where the symbols * [] ? can be used e.g.,
|
||||||
|
</li></ul>
|
||||||
|
<pre>=$e?x -- Will show all registers starting with 'e' and ending with 'x' with a single character in between
|
||||||
|
=$* -- Will show all registers (the '=' is optional for this expression, i.e., '$*')
|
||||||
|
=$*x -- Will show registers ending with 'x'
|
||||||
|
=$st[3-5] -- Will show registers $st3, $st4, $st5
|
||||||
|
</pre>
|
||||||
|
<ul><li>semi-colon-separated, individually sorted groups of expressions, e.g,
|
||||||
|
</li></ul>
|
||||||
|
<pre>var1; var2 -- Will create a group containing both var1 and var2
|
||||||
|
$eax; var1 -- Will show a group containing register $eax and variable var1
|
||||||
|
var1; =$e* -- Will show a group containing variable var1 as well as all registers starting with 'e'
|
||||||
|
</pre>
|
||||||
|
<p>This feature allows to quickly define multiple expressions that interest the user. Because groups are created from these special expressions, they can be collapsed when uninteresting and re-expanded later, without having to be re-entered by the user.
|
||||||
|
</p><p><a><img alt="Image:CDT GroupExpr.png" src="../images/cdt82/CDT_GroupExpr.png" width="545" height="521" border="0" /></a>
|
||||||
|
</p><p>This feature was completed on July 10th, 2012 and updated for local variables on December 19th, 2012. For details see <a href="http://bugs.eclipse.org/381754" class="external text" title="http://bugs.eclipse.org/381754" rel="nofollow">Bug 381754</a> and <a href="http://bugs.eclipse.org/394408" class="external text" title="http://bugs.eclipse.org/394408" rel="nofollow">Bug 394408</a>.
|
||||||
|
</p><p>Note that the comma (,) is not allowed as a group separator as it is used within valid expressions that use templates (e.g., <i>((((((class std::_Vector_base<int, std::allocator<int> >) v))._M_impl))._M_start)</i>).
|
||||||
|
</p>
|
||||||
|
<a name="OS_Resources_View"></a><h3> <span class="mw-headline"> OS Resources View </span></h3>
|
||||||
|
<p>CDT has a new view called "OS Resources". This view will display different information about the resources of the operating system. For example, it can give a list of all processes running on the target. The view will display the information as provided by GDB.
|
||||||
|
</p><p><a><img alt="Image:CDT OSResources.png" src="../images/cdt82/CDT_OSResources.png" width="630" height="391" border="0" /></a>
|
||||||
|
</p><p>As of writing, GDB supported the following information:
|
||||||
|
</p>
|
||||||
|
<pre>Processes - Listing of all processes
|
||||||
|
Process groups - Listing of all process groups
|
||||||
|
Threads - Listing of all threads
|
||||||
|
File descriptors - Listing of all file descriptors
|
||||||
|
Sockets - Listing of all internet-domain sockets
|
||||||
|
Shared-memory regions - Listing of all shared-memory regions
|
||||||
|
Semaphores - Listing of all semaphores
|
||||||
|
Message queues - Listing of all message queues
|
||||||
|
Kernel modules - Listing of all loaded kernel modules
|
||||||
|
</pre>
|
||||||
|
<p><br /> Notes:
|
||||||
|
</p>
|
||||||
|
<ul><li>For performance reasons, the view is not automatically refreshed. Press the <i>Refresh</i> button on the the view toolbar to fetch the latest information. Hovering over this <i>Refresh</i> button will display the time at which the information was last obtained.
|
||||||
|
</li><li>Columns can be re-sized.
|
||||||
|
</li><li>Columns can be removed or added using the view menu.
|
||||||
|
</li><li>Entries can be ordered by column by pressing on the column header.
|
||||||
|
</li><li>When doing debugging of a remote target, the information in the view pertains to the remote target.
|
||||||
|
</li></ul>
|
||||||
|
<p>This feature requires GDB 7.5 and higher. Furthermore, as of GDB 7.5, this feature only works for Linux.
|
||||||
|
</p><p>This feature was completed on September 20th, 2012. For details see <a href="https://bugs.eclipse.org/360314" class="external text" title="https://bugs.eclipse.org/360314" rel="nofollow">Bug 360314</a>.
|
||||||
|
</p>
|
||||||
|
<a name="Breakpoint_Filtering"></a><h3> <span class="mw-headline"> Breakpoint Filtering </span></h3>
|
||||||
|
<p>The CDT has enhanced the standard behavior of the "Show Breakpoints Supported by Selected Target" option of the Breakpoints view. Using this option with the CDT will now only show breakpoints that are actually applicable to the current debug session. Therefore, when debugging a C/C++ application, the user will not be bothered with the breakpoints set in the code of an another C/C++ application.
|
||||||
|
</p><p><a><img alt="Image:BpFilter.png" src="../images/cdt82/BpFilter.png" width="1087" height="414" border="0" /></a>
|
||||||
|
</p><p>For backwards-compatibility, a preference is provided to revert this new behavior to the original one. The original behavior of this option is to have the Breakpoints view show all breakpoints that are of the same type as the current debug session. For example, if debugging Java, only Java breakpoints would be shown, and if debugging C/C++ only C/C++ breakpoints would be shown. This preference can be found under <i>"C/C++ -> Debug -> GDB -> Use aggressive breakpoint filtering"</i>.
|
||||||
|
</p><p>This feature was completed on October 26th, 2012. For details see <a href="https://bugs.eclipse.org/360735" class="external text" title="https://bugs.eclipse.org/360735" rel="nofollow">Bug 360735</a>.
|
||||||
|
</p>
|
||||||
|
<a name="Enhanced_GDB_console_support"></a><h3> <span class="mw-headline"> Enhanced GDB console support </span></h3>
|
||||||
|
<p>CDT is being improved to update its views with any change made to GDB by the user from the GDB console. Updates are being added gradually and the final goal is to allow the user to perform any command from the GDB console, and have CDT stay synchronized with the changes.
|
||||||
|
</p>
|
||||||
|
<a name="Breakpoints.2C_watchpoints_and_tracepoints"></a><h4> <span class="mw-headline"> Breakpoints, watchpoints and tracepoints </span></h4>
|
||||||
|
<p>Breakpoints, watchpoints or tracepoints set from the GDB console are now shown in the Breakpoints view. All breakpoint related GDB commands are supported and synchronized with the UI. No support for catchpoints yet. This feature requires GDB 7.4 or higher.
|
||||||
|
</p><p>This feature was completed on November 29th, 2012. For details see <a href="https://bugs.eclipse.org/392512" class="external text" title="https://bugs.eclipse.org/392512" rel="nofollow">Bug 392512</a>.
|
||||||
|
</p>
|
||||||
|
<a name="Memory_and_variables"></a><h4> <span class="mw-headline"> Memory and variables </span></h4>
|
||||||
|
<p>Memory and variables modified from the GDB console are now updated in the Memory, Memory Browser, Variables and Expressions views. This feature requires GDB 7.6 or higher.
|
||||||
|
</p><p>This feature was completed on January 26th, 2013. For details see <a href="https://bugs.eclipse.org/397715" class="external text" title="https://bugs.eclipse.org/397715" rel="nofollow">Bug 397715</a>.
|
||||||
|
</p>
|
||||||
|
<a name="Reverse_debugging_state"></a><h4> <span class="mw-headline"> Reverse debugging state </span></h4>
|
||||||
|
<p>CDT will now properly update the status of reverse debugging if its state is modified through the GDB console. This feature requires GDB 7.6 or higher.
|
||||||
|
</p><p>This feature was completed on January 31st, 2013. For details see <a href="https://bugs.eclipse.org/399163" class="external text" title="https://bugs.eclipse.org/399163" rel="nofollow">Bug 399163</a>
|
||||||
|
</p>
|
||||||
|
<a name="Breakpoint_actions_to_control_reverse_debugging"></a><h3> <span class="mw-headline"> Breakpoint actions to control reverse debugging </span></h3>
|
||||||
|
<p>It's now possible to control the enabling, disabling and toggling of the reverse debugging mode, through breakpoint actions. The reverse debugging mode can be useful to debug, but has a significant performance cost when enabled. Using the new breakpoint action to enable the reverse debug mode, one can program a breakpoint to enable that mode in the vicinity of the suspected source code. That way, until that point is reached, no performance impacts are felt.
|
||||||
|
</p><p>To use this feature, right-click on a breakpoint and select "Breakpoint Properties". Then in the left page, chose "Actions". Then click "New". In the new dialog, select the Action Type "Reverse Debug Action". Then chose if the action should enable, disable or toggle the reverse debug mode. Finally chose a name for the action. When done, click "Ok"
|
||||||
|
</p><p><a><img alt="Image:CDT-DSF-GDB-RevBPAction-create.png" src="../images/cdt82/CDT-DSF-GDB-RevBPAction-create.png" width="500" height="370" border="0" /></a>
|
||||||
|
</p><p>The newly created action will appear in the list of available actions, that can be attached to any breakpoint To attach it to the current breakpoint, click on "Attach".
|
||||||
|
</p><p><a><img alt="Image:CDT-DSF-GDB-RevBPAction-dialog.png" src="../images/cdt82/CDT-DSF-GDB-RevBPAction-dialog.png" width="985" height="548" border="0" /></a>
|
||||||
|
</p><p>Note: For the reverse debug breakpoint actions to work, reverse debugging must be available in the current debug session. For instance, it will not work if the "non-stop" mode is active.
|
||||||
|
</p><p>This feature was completed on December 13th, 2012. For details see <a href="https://bugs.eclipse.org/365776" class="external text" title="https://bugs.eclipse.org/365776" rel="nofollow">Bug 365776</a>.
|
||||||
|
</p>
|
||||||
|
<a name="Floating_Point_renderer_has_been_added_to_the_memory_package"></a><h3> <span class="mw-headline"> Floating Point renderer has been added to the memory package </span></h3>
|
||||||
|
<p>A floating point render has been added to the memory package. So now there is the Traditional renderer and a Floating Point renderer available. This render allows display and editing of the floating point values. Since it originated from the Traditional render, it's workflow and style are similar. There is no ASCII data pane display, since this did not seem to make much sense with floating point data.
|
||||||
|
</p><p><a><img alt="Image:CDT FloatingPointMemory.png" src="../images/cdt82/CDT_FloatingPointMemory.png" width="834" height="352" border="0" /></a>
|
||||||
|
</p><p>This feature was completed on November 16th, 2012 as part of <a href="http://bugs.eclipse.org/394509" class="external text" title="http://bugs.eclipse.org/394509" rel="nofollow">Bug 394509</a>.
|
||||||
|
</p>
|
||||||
|
<a name="Debugging_multiple_processes_within_one_debug_session"></a><h3> <span class="mw-headline"> Debugging multiple processes within one debug session </span></h3>
|
||||||
|
<p>Debugging a new executable in the same debug session has been improved for GDB versions starting from 7.2. "Debug New Executable" action has been added to the context menu of the Debug view.
|
||||||
|
</p><p><a><img alt="Image:CDT_DebugNewExecutableMenu.png" src="../images/cdt82/CDT_DebugNewExecutableMenu.png" width="610" height="600" border="0" /></a>
|
||||||
|
</p><p><br />
|
||||||
|
The dialog for specifying an executable to debug for local sessions has been changed.
|
||||||
|
</p><p><a><img alt="Image:CDT_NewExecutableDialog_Local.png" src="../images/cdt82/CDT_NewExecutableDialog_Local.png" width="609" height="332" border="0" /></a>
|
||||||
|
</p><p><br />
|
||||||
|
The ability to debug a remote executable using gdbserver has been added.
|
||||||
|
</p><p><a><img alt="Image:CDT_NewExecutableDialog_Remote.png" src="../images/cdt82/CDT_NewExecutableDialog_Remote.png" width="570" height="305" border="0" /></a>
|
||||||
|
</p><p>This feature was completed on January 25th, 2013. For details see <a href="https://bugs.eclipse.org/344890" class="external text" title="https://bugs.eclipse.org/344890" rel="nofollow">Bug 344890</a>.
|
||||||
|
</p><p><br />
|
||||||
|
</p>
|
||||||
|
<a name="Load_information_in_the_Multicore_Visualizer_-_CPU.2Fcore_load_meters"></a><h3> <span class="mw-headline"> Load information in the Multicore Visualizer - CPU/core load meters </span></h3>
|
||||||
|
<p>The Multicore Visualizer view has been enhanced to support system load monitoring, in the form of graphical load meters, showing the load of the system being debugged (local or remote). This works only on Linux targets for now. By default this feature is disabled, as it may cause a bit of increased load when remote-debugging. Here is what it looks-like, when enabled:
|
||||||
|
</p><p><a><img alt="Image:CDT-DSF-GDB-MulticoreVisualizer-LoadMeters.png‎" src="../images/cdt82/CDT-DSF-GDB-MulticoreVisualizer-LoadMeters.png" width="338" height="338" border="0" /></a>
|
||||||
|
</p><p>When enabled and space permits, a load meter is displayed for each core and also one for each CPU, that shows the average load for all contained cores.
|
||||||
|
</p><p>To enable the load meters, one has to use the context menu of the Multicore Visualizer; right-click on the visualizer, go into the "Load Meters" sub-menu and select "Enable Load Meters" :
|
||||||
|
</p><p><a><img alt="Image:CDT-DSF-GDB-MulticoreVisualizer-LoadMeters-enabling2.png‎" src="../images/cdt82/CDT-DSF-GDB-MulticoreVisualizer-LoadMeters-enabling2.png" width="464" height="529" border="0" /></a>
|
||||||
|
</p><p>It's also possible to choose the load meters refresh interval. When the load meters are enabled, a "Refresh Speed" entry is added to the Load Meters sub-menu. There you have a choice of three refresh speeds. Selecting one makes it take effect.
|
||||||
|
</p><p><a><img alt="Image:CDT-DSF-GDB-MulticoreVisualizer-selecting_loadMeters_refresh_speed.png‎" src="../images/cdt82/CDT-DSF-GDB-MulticoreVisualizer-selecting_loadMeters_refresh_speed.png" width="522" height="350" border="0" /></a>
|
||||||
|
</p><p><br />
|
||||||
|
This feature was completed on February 28th, 2013. For details see <a href="https://bugs.eclipse.org/396268" class="external text" title="https://bugs.eclipse.org/396268" rel="nofollow">Bug 396268</a>.
|
||||||
|
</p>
|
||||||
|
<a name="Edit_Tracepoint_on_Create"></a><h3> <span class="mw-headline"> Edit Tracepoint on Create </span></h3>
|
||||||
|
<p>It is no longer necessary to first create a CDT Tracepoint, then edit its properties. Properties such as enabled, pass count, condition, can be set while creating the tracepoint.
|
||||||
|
</p><p>There are different methods to open the properties dialog before creating the Tracepoint. First, using the editor popup menu by right-clicking on the editor gutter, one must set the Breakpoint Type to "C/C++ Tracepoints".
|
||||||
|
</p>
|
||||||
|
<ul><li>Add Breakpoint action.
|
||||||
|
<ol><li>Select the <i>Add Breakpoint...</i> menu item.
|
||||||
|
</li><li>This brings up the tracepoint properties dialog for a line tracepoint pre-filled with the tracepoint's location.
|
||||||
|
</li></ol>
|
||||||
|
</li><li>Control-Double Click
|
||||||
|
<ol><li>Hold the <i>Control</i> key while double-clicking on the editor gutter.
|
||||||
|
</li><li>This brings up the breakpoint properties dialog for a line breakpoint pre-filled with the breakpoints location.
|
||||||
|
</li></ol>
|
||||||
|
</li></ul>
|
||||||
|
<a name="Step_Into_Selection"></a><h3> <span class="mw-headline"> Step Into Selection </span></h3>
|
||||||
|
<p>With the DSF debugger it is now possible to select a function to step into. <br />
|
||||||
|
The selected method can be in a different line than the one under execution <br />
|
||||||
|
The two main methods to do this are
|
||||||
|
</p>
|
||||||
|
<ul><li><b>Using the context menu</b>
|
||||||
|
</li></ul>
|
||||||
|
<p>Select a method, right-click and select "Step Into Selection" <br />
|
||||||
|
or use the short key Ctrl+F5
|
||||||
|
</p><p><a><img alt="Image:StepIntoSelction.png‎" src="../images/cdt82/StepIntoSelction.png" width="560" height="200" border="0" /></a>
|
||||||
|
</p>
|
||||||
|
<ul><li><b>Using the hyper link navigation</b>
|
||||||
|
</li></ul>
|
||||||
|
<p>Press Ctrl-Alt, hover over a function and mouse click on it
|
||||||
|
</p><p><a><img alt="Image:StepIntoSelectionHyperLink.png‎" src="../images/cdt82/StepIntoSelectionHyperLink.png" width="560" height="200" border="0" /></a>
|
||||||
|
</p><p>NOTE: This first implementation runs to the selected line, steps into its methods and stops when a method is entered having the same name and number of arguments of the selected method i.e. Argument types are not validated at this point.
|
||||||
|
</p><p>This feature was completed on May 1st, 2013. For details see <a href="https://bugs.eclipse.org/244865" class="external text" title="https://bugs.eclipse.org/244865" rel="nofollow">Bug 244865</a>.
|
||||||
|
</p>
|
||||||
|
<a name="Multicore_Visualizer_enhanced_selection_and_filtering"></a><h3> <span class="mw-headline"> Multicore Visualizer enhanced selection and filtering </span></h3>
|
||||||
|
<p>The multicore visualizer has been enhanced so that it's now possible to select CPUs and cores, in addition to threads. The previous selection methods still work (ctrl-left-click add-to-selection, left-click and drag, etc), but now are also applicable to CPU and core graphical objects.
|
||||||
|
</p><p><a><img alt="Image:CDT-DSF-GDB-MulticoreVisualizer-Selection.png" src="../images/cdt82/CDT-DSF-GDB-MulticoreVisualizer-Selection.png" width="333" height="333" border="0" /></a>
|
||||||
|
</p><p>This feature was completed on April 26th, 2013. For details see <a href="https://bugs.eclipse.org/404894" class="external text" title="https://bugs.eclipse.org/404894" rel="nofollow">Bug 404894</a>.
|
||||||
|
</p><p><br />
|
||||||
|
Building on the enhanced selection, it's now also possible to filter what is shown in the multicore visualizer. This is especially useful in cases where there are many CPUs/cores/threads, and one wants to concentrate on a subset. To filter the view, first select the graphical elements you want to keep, then from the context menu, chose "Filter to selection". The selected graphical elements will be shown, along with any parent objects; for instance a thread will be shown in its core and CPU. The filter stays in place until cleared, using the context menu "Clear filter".
|
||||||
|
</p><p><a><img alt="Image:CDT-DSF-GDB-MulticoreVisualizer-Filtering.png" src="../images/cdt82/CDT-DSF-GDB-MulticoreVisualizer-Filtering.png" width="994" height="469" border="0" /></a>
|
||||||
|
</p><p>This feature was completed on May 6th, 2013. For details see <a href="https://bugs.eclipse.org/405390" class="external text" title="https://bugs.eclipse.org/405390" rel="nofollow">Bug 405390</a>.
|
||||||
|
</p>
|
||||||
|
<a name="Process_exit_code_shown_in_console"></a><h3> <span class="mw-headline"> Process exit code shown in console </span></h3>
|
||||||
|
<p>When a process completes execution normally, its exit code is shown in the title of that process' console. If the process is terminated or disconnected by the user, no exit code will be shown.
|
||||||
|
</p><p><a><img alt="Image:CDT_Debug_ExitCode.png" src="../images/cdt82/CDT_Debug_ExitCode.png" width="563" height="154" border="0" /></a>
|
||||||
|
</p><p>Note that if there is no process console, then no exit code can be displayed. This affects remote debugging and attach debugging. We hope to address this in the next release of CDT.
|
||||||
|
</p><p>This feature was completed on May 6th, 2013. For details see <a href="https://bugs.eclipse.org/402054" class="external text" title="https://bugs.eclipse.org/402054" rel="nofollow">Bug 402054</a>.
|
||||||
|
</p>
|
||||||
|
<a name="Important_Notes"></a><h2> <span class="mw-headline"> Important Notes </span></h2>
|
||||||
|
<p>Although CDT 8.2 is meant to be a backwards-compatible release, the following exceptions should be noted.
|
||||||
|
</p>
|
||||||
|
<ul><li> The package org.eclipse.cdt.dsf.gdb.multicorevisualizer.internal was made API by mistake when first released. It has now been officially marked internal. Note that the package has always had the word 'internal' in its name. We don't believe there are any extenders to this package yet.
|
||||||
|
</li></ul>
|
||||||
|
<p><br />
|
||||||
|
</p>
|
||||||
|
<a name="Bugs_Fixed_in_this_Release"></a><h2> <span class="mw-headline"> Bugs Fixed in this Release </span></h2>
|
||||||
|
<p>See bugzilla report <a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced;bug_status=RESOLVED;bug_status=VERIFIED;bug_status=CLOSED;resolution=FIXED;target_milestone=8.1.1;target_milestone=8.1.2;target_milestone=8.1.3;target_milestone=8.2;product=CDT;classification=Tools" class="external text" title="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced;bug_status=RESOLVED;bug_status=VERIFIED;bug_status=CLOSED;resolution=FIXED;target_milestone=8.1.1;target_milestone=8.1.2;target_milestone=8.1.3;target_milestone=8.2;product=CDT;classification=Tools" rel="nofollow">Bugs Fixed in CDT 8.2</a>.
|
||||||
|
Open this report in new browser window.
|
||||||
|
</p>
|
||||||
|
<!-- ***** END MANUAL INSERT HTML FROM http://wiki.eclipse.org/CDT/User/NewIn82?action=render -->
|
||||||
|
|
||||||
|
<h2>What's new in other CDT releases</h2>
|
||||||
|
|
||||||
|
<p>To learn what's new in other CDT releases see:</p>
|
||||||
|
<p><a href="cdt_c_whatsnew.htm">CDT - New and Noteworthy</a></p>
|
||||||
|
<p><a href="cdt_c_whatsnew_81.htm">CDT 8.1 - New and Noteworthy</a></p>
|
||||||
|
<p><a href="cdt_c_whatsnew_80.htm">CDT 8.0 - New and Noteworthy</a></p>
|
||||||
|
<p><a href="cdt_c_whatsnew_70.htm">CDT 7.0 - New and Noteworthy</a></p>
|
||||||
|
<p><a href="cdt_c_whatsnew_60.htm">CDT 6.0 - New and Noteworthy</a></p>
|
||||||
|
<p><a href="http://wiki.eclipse.org/CDT/User/NewIn50">CDT 5.0 - New and Noteworthy</a></p>
|
||||||
|
|
||||||
|
<p><a href="#top">Back to Top</a></p>
|
||||||
|
|
||||||
|
<p> </p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,467 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta name="copyright" content="Copyright (c) IBM Corporation and others 2007,2009 This page is made available under license. For full details, see the LEGAL section in the documentation that contains this page.">
|
||||||
|
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<link rel="STYLESHEET" href="../book.css" type="text/css">
|
||||||
|
<style>
|
||||||
|
td {border-top: solid thin black;}
|
||||||
|
img[alt] {}
|
||||||
|
tr {vertical-align: top;}
|
||||||
|
</style>
|
||||||
|
<title>CDT 6.0 New and Noteworthy</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1 id="top">CDT 6.0 - New and Noteworthy</h1>
|
||||||
|
<p>Note: "New and Noteworthy" for <a href="#5.0">previous versions</a> is at the bottom of this file.</p>
|
||||||
|
<p>See <a href="http://wiki.eclipse.org/CDT/User/NewIn60">What's new in CDT 6.0</a> on the CDT wiki;
|
||||||
|
may contain other information.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<table cellpadding="10" cellspacing="0" width="600">
|
||||||
|
<colgroup>
|
||||||
|
<col width="20%">
|
||||||
|
<col width="80%">
|
||||||
|
</colgroup>
|
||||||
|
<tbody>
|
||||||
|
<p><!-- ******************** Editor ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="Editor"></a>
|
||||||
|
<div class="title">Editor</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Rename in File</span></p>
|
||||||
|
</td>
|
||||||
|
<td>To make rename refactoring work interactively in the editor,
|
||||||
|
position the cursor on an identifier in the editor and hit Ctrl-1
|
||||||
|
(the hotfix key). Choose "Rename in file."
|
||||||
|
Changing an identifier simultaneously changes all other references to that identifier.
|
||||||
|
<p><img src="../images/60/RenameInFile.png" alt="Rename in File">
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Refactoring</span></p>
|
||||||
|
</td>
|
||||||
|
<td>"Extract local variable" is added via editor context menu.
|
||||||
|
Select an expression in the editor and select Refactor > Extract local variable
|
||||||
|
from the context menu.
|
||||||
|
<p><img src="../images/60/refactor_before.png" alt="refactor"></p>
|
||||||
|
<p><img src="../images/60/refactorExtractLocalVar.png" alt="refactoring context menu highlighting 'extract local variable'">
|
||||||
|
<p>Give the new local variable a name</p>
|
||||||
|
<p><p><img src="../images/60/refactor_varname.png" alt="refactor"></p></p>
|
||||||
|
A local variable is created from the expression and its
|
||||||
|
use is inserted in the original expression.
|
||||||
|
<p><img src="../images/60/refactor_after.png" alt="refactor"></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Add Include </span></p>
|
||||||
|
</td>
|
||||||
|
<td>Add Include significantly improved.
|
||||||
|
<ul>
|
||||||
|
<li>CDT can infer the header file of a function or class from its use and automatically insert the appropriate
|
||||||
|
#include directive. For example create a file with a main method and a call to printf. Right click on the call to
|
||||||
|
printf and select Source > Add Include. CDT will infer that printf is defined in the cstdio header and
|
||||||
|
automatically insert the #include directive for that header.
|
||||||
|
<ul>
|
||||||
|
<li>This feature works much better in CDT 6.0.</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<!-- <p><img src="../images/60/image.png" alt="alternate text for image for accessibility"> -->
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Outline View</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<ul>
|
||||||
|
<li>Inactive code is shown in Outline View. The CDT parser can now detect top-level declarations within
|
||||||
|
inactive code blocks and display them in the outline view. Inactive declarations appear slightly greyed out and the
|
||||||
|
icon has a slash through it.
|
||||||
|
<p><img src="../images/60/CDT6.0_inactive_code_outline.png" alt="Inactive code in Outline View">
|
||||||
|
<p> </p>
|
||||||
|
</li>
|
||||||
|
<li>Grouping of method definitions in the Outline view.
|
||||||
|
<p></p>
|
||||||
|
The outline view is now capable of displaying class members defined outside the class in the same way it displays
|
||||||
|
members defined inside the class.
|
||||||
|
<p></p>
|
||||||
|
This feature can be turned on/off in the preferences.
|
||||||
|
<p><img src="../images/60/CDT6.0_outline_group_methods2.png" alt="Grouping of method definitions in the Outline view">
|
||||||
|
<p> </p>
|
||||||
|
<p><img src="../images/60/CDT6.0_group_methods_prefernce2.png" alt="Method definitions grouping preference">
|
||||||
|
<p> </p>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold"> Macro Exploration </span></p>
|
||||||
|
</td>
|
||||||
|
<td>Improved Macro Exploration control.
|
||||||
|
<ul>
|
||||||
|
<li>The Macro Expansion hover now has a toolbar at the bottom of the control with back, forward and open
|
||||||
|
declaration buttons.</li>
|
||||||
|
<li>The title bar of the Macro Expansion hover is now draggable.
|
||||||
|
<p><img src="../images/60/CDT6.0_macro_hover.png" alt="Macro Expansion hover toolbar"></p></li>
|
||||||
|
</ul>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Block selection mode </span></p>
|
||||||
|
</td>
|
||||||
|
<td>Block selection mode now works in the CDT editor.
|
||||||
|
<p><img src="../images/60/CDT6.0_block_mode.png" alt="Block selection mode in editor">
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">C style block commenting</span></p>
|
||||||
|
</td>
|
||||||
|
<td>C style block commenting (Ctrl-Shift-/) improved
|
||||||
|
<!-- <p><img src="../images/60/image.png" alt="alternate text for image for accessibility"> -->
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<!-- ******************** Indexing ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="Indexing"></a>
|
||||||
|
<div class="title">Indexing</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Implicit references and overloaded operators</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p></p>
|
||||||
|
Index support for implicit references and overloaded operators:
|
||||||
|
<ul>
|
||||||
|
<li>The indexer now picks up references for uses of overloaded operators.</li>
|
||||||
|
<li>The editor now has full support for overloaded operators including semantic highlighting, mark occurrences
|
||||||
|
and open declaration.
|
||||||
|
<p><img src="../images/60/CDT6.0_OO_editor.png" alt="Overloaded operators support in editor">
|
||||||
|
<p> </p>
|
||||||
|
</li>
|
||||||
|
<li>A category has been added to the syntax highlighting options for overloaded operators.
|
||||||
|
<p><img src="../images/60/CDT6.0_OO_syntax_preferences.png" alt="Overloaded operators syntax color option in preference">
|
||||||
|
<p> </p>
|
||||||
|
</li>
|
||||||
|
<li>It is now possible to search for references to overloaded operators.
|
||||||
|
<p><img src="../images/60/CDT6.0_OO_search.png" alt="Overloaded operators in search results">
|
||||||
|
<p> </p>
|
||||||
|
</li>
|
||||||
|
<li>Uses of overloaded operators now show up in the call hierarchy view.
|
||||||
|
<p><img src="../images/60/CDT6.0_OO_callh2.png" alt="Overloaded operators in call hierarchy view">
|
||||||
|
<p> </p>
|
||||||
|
</li>
|
||||||
|
<li>The indexer is picking up more information to support this feature, therefore indexing time may be longer
|
||||||
|
and the size of the index file will be larger. For this reason the indexer options page provides the option to turn
|
||||||
|
off the collection of implicit references.
|
||||||
|
<p><img src="../images/60/CDT6.0_OO_indexer_preferences.png" alt="Skip implicit references option in indexer preference">
|
||||||
|
<p> </p>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">System Includes</span></p>
|
||||||
|
</td>
|
||||||
|
|
||||||
|
|
||||||
|
<td>
|
||||||
|
<ul>
|
||||||
|
<li>Heuristics to pick up otherwise unresolved include files from the project
|
||||||
|
<p>In older versions of CDT the user was forced to manually set up all include paths that were not discovered by
|
||||||
|
the build system. Now CDT is capable of automatically finding any header file that is located within the project
|
||||||
|
without manual setup.
|
||||||
|
<p>(See <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=213562">Bug 213562</a>)</p>
|
||||||
|
<p> </p>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Indexer Accuracy</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<ul>
|
||||||
|
<li>Rework of template instantiation
|
||||||
|
<p>
|
||||||
|
There have been significant improvements to the CDT editor for supporting C++ templates. Content assist now works
|
||||||
|
much better within code that makes heavy use of templates.</p>
|
||||||
|
<p> </p>
|
||||||
|
<li>
|
||||||
|
There have been numerous improvements to the performance and accuracy of the CDT parser and indexer.</li>
|
||||||
|
</ul>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<!-- ******************** Navigation and Search ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="navAndSearch"></a>
|
||||||
|
<div class="title">Navigation and Search</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Open Declaration</span></p>
|
||||||
|
</td>
|
||||||
|
<td>Open Declaration (F3) improved, particularly for unresolved symbols.
|
||||||
|
<p>Open Declaration is capable of detecting potential matches.</p>
|
||||||
|
<p><img src="../images/60/CDT6.0_open_declaration.png" alt="Improved open declaration for unresolved symbols">
|
||||||
|
<p>It is now possible to navigate from a delete statement to the destructor method that is implicitly called.</p>
|
||||||
|
<p><img src="../images/60/CDT_6.0_delete.png" alt="Delete statement navigation">
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<!-- ******************** Project and Build ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="projAndBuild"></a>
|
||||||
|
<div class="title">Project and Build</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Converters</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<ul>
|
||||||
|
<li>Added a converter to convert a general project to a Managed make project</li>
|
||||||
|
<li>Fixes to Makefile converter</li>
|
||||||
|
</ul>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Working Sets</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<ul>
|
||||||
|
<li>Complete overhaul of the user interface for Working Set Configurations:
|
||||||
|
<ul>
|
||||||
|
<li>Updated Manage Working Set Configurations dialog for simpler workflows</li>
|
||||||
|
<li>Quick access to configurations via a property page for Working Sets
|
||||||
|
<br></br><img src="../images/60/New_cdtwsconfig_wsProperties.png" alt="New working set configuration dialog">
|
||||||
|
<p> </p>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
<li>Context menu actions on Working Sets in the Project Explorer for activating and building configurations
|
||||||
|
<p><img src="../images/60/New_cdtwsconfig_wsContextMenu.png" alt="Activating and building working set configurations through context menu"></p>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
<li>For more details, see the <a href="http://wiki.eclipse.org/CDT/designs/workingSets">working sets
|
||||||
|
design document</a></li>
|
||||||
|
</ul></li>
|
||||||
|
</ul>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Make Targets View</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<ul>
|
||||||
|
<li>Icons, menu and dialogs have been enhanced. Build action uses hammer icon for consistency with project
|
||||||
|
build icon in editor toolbar.
|
||||||
|
<p><img src="../images/60/MTV.png" alt="Make Targets View">
|
||||||
|
<p> </p>
|
||||||
|
</p>
|
||||||
|
</li>
|
||||||
|
<li>Drag and Drop of Make Targets in Make Targets View. It is possible to copy/paste, drag files from Project
|
||||||
|
Explorer to the view, or Make Targets to external editor, various options available.
|
||||||
|
<p><img src="../images/60/MTV-DND.png" alt="Drag and Drop enabled in Make Targets View">
|
||||||
|
<p> </p>
|
||||||
|
</p>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Error and Problem management</span></p>
|
||||||
|
</td>
|
||||||
|
<td>ErrorParserManager has been significantly simplified and improved. See <a
|
||||||
|
href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=264715">bug 264715 </a>and its subtasks.
|
||||||
|
<ul>
|
||||||
|
<li>Uses a much more accurate algorithm for associating errors/warnings from build output with files in the
|
||||||
|
workspace.</li>
|
||||||
|
<li>Other C/C++ projects from the workspace are considered when looking for files.</li>
|
||||||
|
<li>RSE EFS projects and EFS resources are supported.</li>
|
||||||
|
<li>Improved performance.</li>
|
||||||
|
</ul>
|
||||||
|
<p><img src="../images/60/EPM-multi.png" alt="More accurate algorithm for associating errors/warnings from build output with files in the workspace">
|
||||||
|
<p>In the <strong>Problems View</strong>, external file locations (outside of the workspace) have been moved to the Location
|
||||||
|
column and associated with "Open External Location" menu.
|
||||||
|
<p><img src="../images/60/PV-extloc.png" alt="Open External Location from context menu in Problems View">
|
||||||
|
<ul>
|
||||||
|
<li>Remote Project Support
|
||||||
|
<ul>
|
||||||
|
<li>New <strong>ICommandLauncher interface</strong> supports overriding how build commands are launched.</li>
|
||||||
|
<li><strong>EFS resources</strong> now supported with Managed Build.</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li>XL C/C++ Compiler Support
|
||||||
|
<ul>
|
||||||
|
<li>The <strong>XL C/C++ Error Parser</strong> has been modernized. It can handle compiler errors/warnings better and
|
||||||
|
now also xlC linker warnings.</li>
|
||||||
|
<li><strong>XL C/C++ v10.1 option support</strong> in Managed Build</li>
|
||||||
|
<li><strong>XL UPC compiler</strong> support added.</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li><strong>Headless Build</strong> You can now Import and Build CDT Projects without starting the IDE.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<!-- ******************** Debug and Launch ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="debugAndLaunch"></a>
|
||||||
|
<div class="title">Debug and Launch</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">DSF Integration</span></p>
|
||||||
|
</td>
|
||||||
|
<td>DSF (Eclipse Debugger Services Framework) integrated. See <a
|
||||||
|
href="http://www.eclipse.org/dsdp/dd/development/relnotes/dd_news-1.1.html">DSF features</a> for more information.</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Launch Group</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>New "Launch Group" launch configuration. Allows to launch several processes at once.</p>
|
||||||
|
<p><img src="../images/60/Run_debug_launch_group.png" alt="Debug launch group">
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<!-- ******************** Bugs fixed ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="bugs60"></a>
|
||||||
|
<div class="title">Bugs fixed</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Bugs fixed</span></p>
|
||||||
|
</td>
|
||||||
|
<td>Bugs fixed in this release:
|
||||||
|
<a href="http://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&short_desc_type=allwordssubstr&short_desc=&classification=Tools&product=CDT&target_milestone=6.0&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&status_whiteboard_type=allwordssubstr&status_whiteboard=&keywords_type=allwords&keywords=&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&resolution=FIXED&emailtype1=exact&email1=&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&cmdtype=doit&order=Reuse+same+sort+as+last+time&field0-0-0=noop&type0-0-0=noop&value0-0-0=">
|
||||||
|
CDT 6.0 bug fixes</a>
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<!-- ******************** NewTopic ********************** -->
|
||||||
|
<!--
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="NewTopic"></a>
|
||||||
|
<div class="title">Newtopic</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">texthere</span></p>
|
||||||
|
</td>
|
||||||
|
<td>text here.
|
||||||
|
<p><img src="../images/image.png" alt="alternate text for image for accessibility">
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
-->
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<p><a href="#top">Back to Top</a> <!-- ******************** CDT 5.0 info ********************** -->
|
||||||
|
<h1 id="5.0">CDT 5.0 - New and Noteworthy</h1>
|
||||||
|
<p>CDT 5.0 includes new features in Editor, Call Hierarchy,
|
||||||
|
Refactoring, Indexer, Projects & Build, and Debug.
|
||||||
|
<p>
|
||||||
|
See <a href="http://wiki.eclipse.org/CDT/User/NewIn50">What's New in CDT 5.0</a> on the CDT Wiki for more information including screen shots.
|
||||||
|
|
||||||
|
<p>Highlights include:
|
||||||
|
|
||||||
|
<h2>Editor</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Code and File Templates - user-definable templates can be used in New Class and New Source/Header File wizards.
|
||||||
|
<li>New preference page for Code Templates
|
||||||
|
<li>Outline view for assembly files
|
||||||
|
<li>Code formatter improvements including new whitespace and line wrapping options, Improved GNU coding style compliance
|
||||||
|
<li>Content assist improvements
|
||||||
|
<li>Doxygen editor support - auto-generation of tags and a pluggable framework for other documentation tools is now available.
|
||||||
|
<li>Mark Occurrences - highlights where the selected identifier occurs elsewhere in the editor
|
||||||
|
<li>Folding of compound statements
|
||||||
|
<li>Macro Expansion hover and exploration tool
|
||||||
|
<li>Spell checking available and enabled by default
|
||||||
|
<li>Scalability mode for working with very large files.
|
||||||
|
<li>Visual Studio key bindings
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<h2>Navigation and Search</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Open Declaration for operators, empty macros, element in outline view, etc
|
||||||
|
<li>Open Element support for static functions/variables, other improvements
|
||||||
|
<li>Search - for Static functions/variables, macros, references of local variables, Search view usability improvements
|
||||||
|
</ul>
|
||||||
|
<h2>Call Hierarchy</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Read/write decorators indicate read/write status for variables
|
||||||
|
<li>Polymorphic method calls (virtual methods) support
|
||||||
|
</ul>
|
||||||
|
<h2>Refactoring</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Refactoring infrastructure much improved, models transformation on the AST
|
||||||
|
<li>Generate Getters and Setters
|
||||||
|
<li>Hide Method
|
||||||
|
<li>Implement Method
|
||||||
|
<li>Extract Constant
|
||||||
|
<li>Extract Function
|
||||||
|
</ul>
|
||||||
|
<h2>Indexer</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Improved accuracy and performance
|
||||||
|
<li>Entirely new preprocessor
|
||||||
|
<li>Improved infrastructure
|
||||||
|
<li>Visual indication of indexer status
|
||||||
|
</ul>
|
||||||
|
<h2>Projects and Build</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Project Properties improved usability
|
||||||
|
<li>Make target locations - make targets at the project level are built in the project build directory
|
||||||
|
</ul>
|
||||||
|
<h2>Debug</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Executables view
|
||||||
|
<li>Event breakpoints - added gdb catchpoints support
|
||||||
|
</ul>
|
||||||
|
<p><a href="#top">Back to Top</a>
|
||||||
|
<p> </p>
|
||||||
|
|
||||||
|
<p>To learn what's new in CDT releases see:</p>
|
||||||
|
<p><a href="cdt_c_whatsnew.htm">CDT - New and Noteworthy</a></p>
|
||||||
|
<p><a href="cdt_c_whatsnew_81.htm">CDT 8.1 - New and Noteworthy</a></p>
|
||||||
|
<p><a href="cdt_c_whatsnew_80.htm">CDT 8.0 - New and Noteworthy</a></p>
|
||||||
|
<p><a href="cdt_c_whatsnew_70.htm">CDT 7.0 - New and Noteworthy</a></p>
|
||||||
|
<p><a href="cdt_c_whatsnew_60.htm">CDT 6.0 - New and Noteworthy</a></p>
|
||||||
|
<p><a href="http://wiki.eclipse.org/CDT/User/NewIn50">CDT 5.0 - New and Noteworthy</a></p>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
|
@ -0,0 +1,351 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta name="copyright" content="Copyright (c) IBM Corporation and others 2007,2009 This page is made available under license. For full details, see the LEGAL section in the documentation that contains this page.">
|
||||||
|
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<link rel="STYLESHEET" href="../book.css" type="text/css">
|
||||||
|
<style>
|
||||||
|
td {border-top: solid thin black;}
|
||||||
|
img[alt] {}
|
||||||
|
tr {vertical-align: top;}
|
||||||
|
</style>
|
||||||
|
<title>CDT 7.0 New and Noteworthy</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1 id="top">CDT 7.0 - New and Noteworthy</h1>
|
||||||
|
<p>See <a href="http://wiki.eclipse.org/CDT/User/NewIn70">What's new in CDT 7.0</a> on the CDT wiki
|
||||||
|
which may contain more recent information.
|
||||||
|
</p>
|
||||||
|
<table cellpadding="10" cellspacing="0" width="600">
|
||||||
|
<colgroup>
|
||||||
|
<col width="20%">
|
||||||
|
<col width="80%">
|
||||||
|
</colgroup>
|
||||||
|
<tbody>
|
||||||
|
<p><!-- ******************** Editor ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="Editor"></a>
|
||||||
|
<div class="title">Editor</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Sort Lines</span></p>
|
||||||
|
</td>
|
||||||
|
<td>The new <strong>Sort Lines</strong> command that sorts selected lines alphabetically.
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Surround with</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p><img src="../images/70/CDT70_Surroundwith.png" alt="Surround with"></img></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Templates View support</span></p>
|
||||||
|
</td>
|
||||||
|
<td>Added Templates View support.
|
||||||
|
<p><img src="../images/70/CDT70_Templates.png" alt="Templates View"></img></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Outline View Groupings</span></p>
|
||||||
|
</td>
|
||||||
|
<td>Option to group macro definitions in the Outline view.
|
||||||
|
<p><img src="../images/70/CDT70_Outlinegroupmacros.png" alt="Outline View Groupings"></img></p>
|
||||||
|
<p> </p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<!-- ******************** Codan ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="Editor"></a>
|
||||||
|
<div class="title">Codan</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Code Analysis</span></p>
|
||||||
|
</td>
|
||||||
|
<td>New code analysis framework is introduced, called Codan. See this
|
||||||
|
<a href="http://wiki.eclipse.org/CDT/designs/StaticAnalysis">wiki</a> for details.
|
||||||
|
<p><img src="../images/70/CDT70_Codan.png" alt="Codan"></img></p>
|
||||||
|
<p> </p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<!-- ******************** Refactoring ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="Refactoring"></a>
|
||||||
|
<div class="title">Refactoring</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Getters and setters</span></p>
|
||||||
|
</td>
|
||||||
|
<td>Choice where to place getters and setters during refactoring.
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Refactoring History</span></p>
|
||||||
|
</td>
|
||||||
|
<td>Introduced <strong>Refactoring History</strong> for the CDT Refactorings
|
||||||
|
<p><img src="../images/70/CDT70_Refactoringhistory.png" alt="Getters and setters"></img></p>
|
||||||
|
<p> </p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<!-- ******************** Build ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="Build"></a>
|
||||||
|
<div class="title">Build</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Edit While Building</span></p>
|
||||||
|
</td>
|
||||||
|
<td>Allow saving files while external Makefile builds are in progress
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Console Error Highlighting</span></p>
|
||||||
|
</td>
|
||||||
|
<td>Compiler errors and warnings are now highlighted in the build console.
|
||||||
|
Navigation from errors in build console to location in editor is possible
|
||||||
|
with double-click on the highlighted line.
|
||||||
|
<p><img src="../images/70/CDT70_ConsoleProblemHighlighting.png" alt="Console Error Highlighting"></img></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Regex Error Parser</span></p>
|
||||||
|
</td>
|
||||||
|
<td>Regular Expression Error Parser introduced. The parser is user-configurable and can be used
|
||||||
|
to parse errors from non-standard compilers
|
||||||
|
<p><img src="../images/70/CDT70_RegexErrorParser.png" alt="Regex Error Parser"></img></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Save Log</span></p>
|
||||||
|
</td>
|
||||||
|
<td>Added ability to save build log to a file
|
||||||
|
<p><img src="../images/70/CDT70_SaveLog.png" alt="Save Log"></img></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Run Last Target</span></p>
|
||||||
|
</td>
|
||||||
|
<td>New keyboard bindings <Q>Run Last Make Target</Q> F9/Shift-F9
|
||||||
|
<p><img src="../images/70/CDT70_LastMakeTarget.png" alt="Run Last Target"></img></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Project Context Menu</span></p>
|
||||||
|
</td>
|
||||||
|
<td>Organized project context menu related to build.
|
||||||
|
<p><img src="../images/70/CDT70_ProjectContextMenu.png" alt="Project Context Menu"></img></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Build Selected Configurations</span></p>
|
||||||
|
</td>
|
||||||
|
<td>Reworked <Q>Build Selected Configurations</Q> dialog.
|
||||||
|
<p><img src="../images/70/CDT70_BuildSelected.png" alt="Build Selected Configurations"></img></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Build Preferences</span></p>
|
||||||
|
</td>
|
||||||
|
<td>Organized build preferences under <strong>Build</strong> page.
|
||||||
|
<p><img src="../images/70/CDT70_BuildPreferences.png" alt="Build Preferences"></img></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">New Icons</span></p>
|
||||||
|
</td>
|
||||||
|
<td>New icons and decorations.
|
||||||
|
<p><img src="../images/70/CDT70_NewIcons70.png" alt="New Icons"></img></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Import Includes</span></p>
|
||||||
|
</td>
|
||||||
|
<td>Import/Export in Includes and Symbols tabs on the Paths and Symbols project properties.
|
||||||
|
<p><img src="../images/70/CDT70_ImportIncludes.png" alt="Import Includes"></img></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">MinGW and Cygwin</span></p>
|
||||||
|
</td>
|
||||||
|
<td>Better algorithms to recognize MinGW and Cygwin toolchains, see
|
||||||
|
<a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=303900">bug 303900 (Cygwin 1.7)</a> and
|
||||||
|
<a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=195572">bug 195572 (MINGW)</a> for details.
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Hello World</span></p>
|
||||||
|
</td>
|
||||||
|
<td>When a Hello World project is created, open generated file automatically.
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Headless Builder</span></p>
|
||||||
|
</td>
|
||||||
|
<td>Headless Builder has been improved: supports configuration selection,
|
||||||
|
returns error code if built projects have error markers.
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">GCC options</span></p>
|
||||||
|
</td>
|
||||||
|
<td>ManagedBuild GCC toolchain supports pre included header files, i.e. <strong>-include</strong> switch to gcc
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ******************** Project/Configuration References ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">References</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<ul>
|
||||||
|
<li>CDT Project References can be ordered. Referenced paths and symbols automatically track this order.</li>
|
||||||
|
<li>References to library projects are automatically linked in.</li>
|
||||||
|
<li>A configuration can reference another configuration in the same project.</li>
|
||||||
|
</ul>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">UPC</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<ul>
|
||||||
|
<li>New UPC project wizard supports the Berkeley UPC toolchain.</li>
|
||||||
|
</ul>
|
||||||
|
<p> </p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<!-- ******************** Debug ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="Debug"></a>
|
||||||
|
<div class="title">Debug</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Non-Stop</span></p>
|
||||||
|
</td>
|
||||||
|
<td>Support for <strong>Non-Stop Debugging</strong> (stopping one or more threads while the others continue to execute).
|
||||||
|
Requires GDB 7.0 or newer.
|
||||||
|
<p><img src="../images/70/CDT70_NonStopDebugging.png" alt="Non-Stop debugging"></img></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Features</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<ul>
|
||||||
|
<li><strong>DSF-GDB</strong>. The default debugger for the CDT is now using a different debugging framework and is called DSF-GDB.
|
||||||
|
It provides better support for newer GDB versions, such as 6.7, 6.8 and 7.x, for older versions you would
|
||||||
|
have to edit preferences to use the old framework (CDI) by default. See full list of DSF-GDB features
|
||||||
|
<a href="http://www.eclipse.org/dsdp/dd/development/relnotes/dd_news-1.1.html">here</a>.
|
||||||
|
</li>
|
||||||
|
<li><strong>GDB Tracepoints</strong> are now supported. See the
|
||||||
|
<a href="http://wiki.eclipse.org/CDT/designs/Tracepoints">wiki page</a>. Available in DSF-GDB only.
|
||||||
|
</li>
|
||||||
|
<li><strong>Reverse Debugging</strong> which allows to undo execution.
|
||||||
|
Requires GDB 7.0 or newer and only available on Linux. Available in DSF-GDB only.
|
||||||
|
A webinar on the topic is available <a href="http://live.eclipse.org/node/723">here</a>.
|
||||||
|
</li>
|
||||||
|
<li><strong>Run To Line</strong> feature now allows to run to any line in the program, instead of only lines within the same method.
|
||||||
|
</li>
|
||||||
|
<li><strong>Pretty Printing</strong> feature of GDB is supported. Requires GDB 7.0 or newer as well as python, and GDB's python pretty-printers.
|
||||||
|
Some information available <a href="http://sourceware.org/gdb/wiki/STLSupport">here</a>.
|
||||||
|
</li>
|
||||||
|
<li><strong>Interrupts on Windows</strong> platform while debugging application got improved support.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<p> </p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<!-- ******************** Bugs fixed ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="bugs70"></a>
|
||||||
|
<div class="title">Bugs Fixed</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Fixed</span></p>
|
||||||
|
</td>
|
||||||
|
<td>All Bugzilla tasks closed in this release:
|
||||||
|
<a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced;bug_status=RESOLVED;bug_status=VERIFIED;bug_status=CLOSED;resolution=FIXED;target_milestone=6.1;target_milestone=7.0;product=CDT;classification=Tools">
|
||||||
|
CDT 7.0 bug fixes
|
||||||
|
</a>
|
||||||
|
<p> </p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<!-- ******************** Known Limitations ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="bugs70"></a>
|
||||||
|
<div class="title">Known Limitations</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Limitations</span></p>
|
||||||
|
</td>
|
||||||
|
<td>Cannot run or debug class in a project with GB18030 characters in workspace/project name.
|
||||||
|
Most class libraries do not properly support the creation of a system process (via java.lang.Runtime.exec(...))
|
||||||
|
when the specified command line contains GB18030 characters. This limitation means the scanner
|
||||||
|
discovery mechanism and debugger cannot launch applications when the command line it generates
|
||||||
|
contains GB18030 characters. Details in <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=308803">Bug 308803</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<p>To learn what's new in CDT releases see:</p>
|
||||||
|
<p><a href="cdt_c_whatsnew.htm">CDT - New and Noteworthy</a></p>
|
||||||
|
<p><a href="cdt_c_whatsnew_81.htm">CDT 8.1 - New and Noteworthy</a></p>
|
||||||
|
<p><a href="cdt_c_whatsnew_80.htm">CDT 8.0 - New and Noteworthy</a></p>
|
||||||
|
<p><a href="cdt_c_whatsnew_70.htm">CDT 7.0 - New and Noteworthy</a></p>
|
||||||
|
<p><a href="cdt_c_whatsnew_60.htm">CDT 6.0 - New and Noteworthy</a></p>
|
||||||
|
<p><a href="http://wiki.eclipse.org/CDT/User/NewIn50">CDT 5.0 - New and Noteworthy</a></p>
|
||||||
|
|
||||||
|
<p><a href="#top">Back to Top</a>
|
||||||
|
|
||||||
|
<p> </p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
|
@ -0,0 +1,558 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta name="copyright" content="Copyright (c) IBM Corporation and others 2007,2009 This page is made available under license. For full details, see the LEGAL section in the documentation that contains this page.">
|
||||||
|
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<link rel="STYLESHEET" href="../book.css" type="text/css">
|
||||||
|
<style>
|
||||||
|
td {border-top: solid thin black;}
|
||||||
|
img[alt] {}
|
||||||
|
tr {vertical-align: top;}
|
||||||
|
</style>
|
||||||
|
<title>CDT 8.0 New and Noteworthy</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1 id="top">CDT 8.0 - New and Noteworthy</h1>
|
||||||
|
<p>See <a href="http://wiki.eclipse.org/CDT/User/NewIn80">What's new in CDT 8.0</a> on the CDT Wiki
|
||||||
|
which may contain more recent information.
|
||||||
|
</p>
|
||||||
|
<table cellpadding="10" cellspacing="0" width="600">
|
||||||
|
<colgroup>
|
||||||
|
<col width="20%">
|
||||||
|
<col width="80%">
|
||||||
|
</colgroup>
|
||||||
|
<tbody>
|
||||||
|
<p><!-- ******************** Editor ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="Editor"></a>
|
||||||
|
<div class="title">Editor</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Override_Markers</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>In C++ files, method declarations and definitions are annotated on the vertical bar using three types of symbols:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Override (<i>green triangle</i>) indicating that a virtual method in one of base classes is overridden,
|
||||||
|
</li>
|
||||||
|
<li>Implement (<i>empty blue triangle</i>) indicating that a pure virtual (abstract) method in one of base classes is overridden,
|
||||||
|
</li>
|
||||||
|
<li>Shadow (<i>dark blue triangle</i>) indicating that a method in one of base classes <i>with the same paremeter set</i> is shadowed.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<p><img src="../images/80/CDTOverrideMarkers.png" alt="Image:CDTOverrideMarkers.png"></img></p>
|
||||||
|
</p>
|
||||||
|
<p>As in JDT, the annotations have the action which allows to go to the declaration in base.
|
||||||
|
</p
|
||||||
|
><p>In case of multiple inheritance, the messages also contain the name of <i>direct</i> base class of the overriding method's class if the overrided method's class is further up the inheritance hierarchy.
|
||||||
|
</p>
|
||||||
|
<p>Contrary to JDT, several messages are sometimes generated on one marker (e.g. when the same method is overridden through several base classes).
|
||||||
|
</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Selection Expansion</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>The C++ editor now allows to expand the selection to enclosing, next and previous nodes of the AST, as well as restore the hierarchy.
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/80/CDTExpandSelection.png" alt="Image:CDTExpandSelection.png"></img></p>
|
||||||
|
</p>
|
||||||
|
<p>The behaviour is strictly analogous to JDT and the actions are located in "Edit -> Expand Selection To" menu.
|
||||||
|
</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Camel Case Completion</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>The C/C++ now supports camel case completion similar to the one of the JDT. The following additional features are available:
|
||||||
|
</p>
|
||||||
|
<ul><li>underscore notation (I): <code>FB</code> matches <code>FooBar</code> as well as <code>FOO_BAR</code> or <code>Foo_Bar</code>
|
||||||
|
</li><li>underscore notation (II): you can also type the underscore in the text, in which case matches are explicitly required to contain the underscore. <code>F_B</code> matches <code>FOO_BAR</code>, but not <code>FooBar</code>.
|
||||||
|
</li><li>you don't need to specify all segments: It is OK to omit segments (not the first, however): <code>OTh</code> matches <code>OneTwoThree</code>, even though no characters for <code>Two</code> are specified.
|
||||||
|
</li><li>a segment in the matching name can consist of only upper case letters: <code>IOT</code> matches <code>IONETWO</code>.
|
||||||
|
</li></ul>
|
||||||
|
<p><img src="../images/80/CDTCamelCaseCompletionDemo.png" alt="Image:CDTCamelCaseCompletionDemo.png"></img></p>
|
||||||
|
</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Configurable Name Style</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>User-configurable name styles for constants, variables, class fields, getters and setters, and for header, source and test files.
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/80/NameStyle.png" class="image" alt="Image:NameStyle.png"></img></p>
|
||||||
|
</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">New Code Formatting Options</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>New options for formatting of constructor initializer lists, stream output expressions, and inline comments. Numerous improvements to the code formatter.
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/80/CodeStyle.png" alt="Image:CodeStyle.png"></img></p>
|
||||||
|
</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">New Code Templates</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>New code templates for namespace and class declarations and for C++ test files.
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/80/CodeTemplates.png" alt="Image:CodeTemplates.png"></img></p>
|
||||||
|
</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<!-- ******************** Codan ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="Editor"></a>
|
||||||
|
<div class="title">Code Analysis (Codan)</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Unresolved Symbols</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>Codan now has a checker which generates Problems on instances of ProblemBindings in AST, generated by the Parser. This allows to reveal many errors while typing.
|
||||||
|
</p><p>Quick fixes are provided for a subset of problems. As for now, the available fixes are:
|
||||||
|
</p>
|
||||||
|
<ul><li>Name resolution problem:
|
||||||
|
<ul><li>Create Local Variable
|
||||||
|
</li><li>Create Field
|
||||||
|
</li><li>Create Parameter
|
||||||
|
</li></ul>
|
||||||
|
</li></ul>
|
||||||
|
<p><img src="../images/80/CDTNameResolutionFix.png" alt="Image:CDTNameResolutionFix.png"></img></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<!-- ******************** Refactoring ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="Refactoring"></a>
|
||||||
|
<div class="title">Refactoring</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Rename Refactoring as Quick Fix</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p><i>Rename in workspace</i> option in quick fix.</p>
|
||||||
|
<p><img src="../images/80/RenameInWorkspace.png" alt="Image:RenameInWorkspace.png"></img></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Lightweight Rename Refactoring</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>JDT-style rename refactoring.</p>
|
||||||
|
<p><img src="../images/80/RenameRefactoring.png" alt="Image:RenameRefactoring.png"></img></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Toggle Function Definition</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>Toggle Function Definition moves a function definition inside an C/C++ source editor from one
|
||||||
|
position to another and preserves correctness.
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/80/Cdt_t_toggle_member.png" alt="Image:cdt_t_toggle_member.png"></img></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ******************** Build ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="Build"></a>
|
||||||
|
<div class="title">Build</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Build Console</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<ul><li>The "C-Build console" is now named "CDT Build Console"
|
||||||
|
</li><li>It is now possible to open the CDT Build Console before performing a build. See <a href="http://bugs.eclipse.org/320765" class="external text" title="http://bugs.eclipse.org/320765" rel="nofollow">bug 320765</a>. Note that operations on the console will require the user to first select a project. The below screenshot shows the new access to the CDT Build Console.
|
||||||
|
</li></ul>
|
||||||
|
<p><img src="../images/80/CDTConsoleStart.jpg" alt="Image:CDTConsoleStart.jpg"></img></p>
|
||||||
|
<ul><li>"CDT Global Build Console" got introduced. This console combines output from all referenced projects being built in one view. See <a href="http://bugs.eclipse.org/309113" class="external text" title="http://bugs.eclipse.org/309113" rel="nofollow">bug 309113</a>.
|
||||||
|
</li></ul>
|
||||||
|
<p><img src="../images/80/CDTGlobalBuildConsole.jpg" alt="Image:CDTGlobalBuildConsole.jpg"></img></p>
|
||||||
|
<ul><li>Differentiate color highlighting in build output for error, warning and info problem markers. See <a href="http://bugs.eclipse.org/307211" class="external text" title="http://bugs.eclipse.org/307211" rel="nofollow">bug 307211</a>.
|
||||||
|
</li></ul>
|
||||||
|
<p><img src="../images/80/Bug_307211.png" alt="Image:Bug 307211.png"></img></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Error Parsers</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<ul><li>Added ability to reset individual error parsers in preferences. Also icons to indicate status, such as "user", "extension" icons and "wrench" overlay for customized parsers, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=302720" class="external text" title="https://bugs.eclipse.org/bugs/show_bug.cgi?id=302720" rel="nofollow">bug 302720</a>.
|
||||||
|
</li></ul>
|
||||||
|
<p><img src="../images/80/Bug-302720-ResetErrorParser.png" alt="Image:Bug-302720-ResetErrorParser.png"></img></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Make Targets</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<ul><li>Rebuild Last Target F9 got a new option in preferences - to rebuild last target from a whole project including subfolders. This preference is the default now. <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=333113" class="external text" title="https://bugs.eclipse.org/bugs/show_bug.cgi?id=333113" rel="nofollow">bug 333113</a>.
|
||||||
|
</li></ul>
|
||||||
|
<p><img src="../images/80/Bug-333113-LastMakeTarget.png" alt="Image:Bug-333113-LastMakeTarget.png"></img></p>
|
||||||
|
</p>
|
||||||
|
<ul><li>Source folders are shown in collapsed form now in Make Targets View, similarly as they are shown in Project Explorer. <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=339015" class="external text" title="https://bugs.eclipse.org/bugs/show_bug.cgi?id=339015" rel="nofollow">bug 339015</a>.
|
||||||
|
</li></ul>
|
||||||
|
<p><img src="../images/80/Bug-339015-MakeTargetView-SrcRoots.png" alt="Image:Bug-339015-MakeTargetView-SrcRoots.png"></img></p>
|
||||||
|
</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Managed Build</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<ul><li>By default, there will be a space added after "-o" option and its value in compiler/linker commands in the generated makefiles. That stands for other applicable options as well. See <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=232373" class="external text" title="https://bugs.eclipse.org/bugs/show_bug.cgi?id=232373" rel="nofollow">bug 232373</a>.
|
||||||
|
<pre>g++ -o "Hello.exe" ./src/Hello.o
|
||||||
|
</li></ul>
|
||||||
|
</pre>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Scanner Discovery</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<ul><li>It is possible now to clear old built-in include paths and symbols left after compiler upgrade in Paths&Symbols in project properties. The "Clear" button was introduced on "Scanner Discovery" page. See <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=206372" class="external text" title="https://bugs.eclipse.org/bugs/show_bug.cgi?id=206372" rel="nofollow">bug 206372</a>.
|
||||||
|
</li><li>You can now inspect the output of command to collect built-in compiler include paths and symbols, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=342069" class="external text" title="https://bugs.eclipse.org/bugs/show_bug.cgi?id=342069" rel="nofollow">bug 342069</a>.
|
||||||
|
</li></ul>
|
||||||
|
<p><img src="../images/80/DiscoveryTab.png" alt="Image:DiscoveryTab.png"></img></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ******************** Debug ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="Debug"></a>
|
||||||
|
<div class="title">Debug</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Project-less debugging</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>CDT can now be used to debug any binary, without needing to specify or even create a project in Eclipse. This is supported for all types of debugging (local, remote, attach, and post-mortem sessions).
|
||||||
|
</p><p>Furthermore, for an attach session (local or remote), there is even no need to specify the binary; for a local attach, GDB can find the binary automatically, while for a remote attach, CDT will prompt for it when it needs it.
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/80/Noprojectdebug.png" alt="Image:Noprojectdebug.png"></img></p>
|
||||||
|
<p>This feature was completed April 26th, 2011 as part of <a href="http://bugs.eclipse.org/343861" class="external text" title="http://bugs.eclipse.org/343861" rel="nofollow">Bug 343861</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Support for full pretty-printing of complex structures</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>With the proper setup of GDB, DSF-GDB will now print complex structures such as Maps, Lists and Vectors, in a user-friendly fashion, within the Variables and Expressions views, as well as the advanced Debug hover of the Editor. See below on how to setup GDB for this feature to work.
|
||||||
|
</p><p><br> <b>Without pretty-printing:</b>
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/80/NoPrettyPrint.png" alt="Image:NoPrettyPrint.png"></img></p>
|
||||||
|
<p><br> <b>With pretty-printing:</b>
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/80/FullPrettyPrint.png" alt="Image:FullPrettyPrint.png"></img></p>
|
||||||
|
<p><br> This feature has been contributed by Jens Elmenthaler to CDT 8.0 as of November 4th, 2010, as part of <a href="http://bugs.eclipse.org/302121" class="external text" title="http://bugs.eclipse.org/302121" rel="nofollow">Bug 302121</a>
|
||||||
|
</p><p><br> <b>Configuring GDB for pretty-printing:</b>
|
||||||
|
</p>
|
||||||
|
<ul><li>You will need to have python installed on your machine
|
||||||
|
</li></ul>
|
||||||
|
<ul><li>If you want to pretty-print STL structures, you will need the Python pretty-printers for STL. Check-out the latest Python libstdc++ printers to a place on your machine. (Note that you can create your own pretty-printers for any complex-structure). In a local directory, do:
|
||||||
|
<pre> svn co svn://gcc.gnu.org/svn/gcc/trunk/libstdc++-v3/python
|
||||||
|
</pre>
|
||||||
|
</li></ul>
|
||||||
|
<ul><li>You will need to create a gdbinit file to tell GDB where the pretty-printers are. Create a gdbinit file with the following 6 lines. The path needs to match where the python module above was checked-out. So if checked out to: /home/marc/gdb_printers/, the path would be as written in the example:
|
||||||
|
<pre> python
|
||||||
|
import sys
|
||||||
|
sys.path.insert(0, '/home/marc/gdb_printers/python')
|
||||||
|
from libstdcxx.v6.printers import register_libstdcxx_printers
|
||||||
|
register_libstdcxx_printers (None)
|
||||||
|
end
|
||||||
|
</pre>
|
||||||
|
</li></ul>
|
||||||
|
<ul><li>You will need GDB 7.0 or later. GDB 7.2 is recommended because it has some bug fixes for the pretty-printing.
|
||||||
|
</li></ul>
|
||||||
|
<ul><li>In your DSF-GDB launch, make sure you use the right GDB and the right gdbinit file
|
||||||
|
</li></ul>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Support for pending breakpoints</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>When a breakpoint is set in a dynamically-linked library that was not loaded yet, the breakpoint will now work, once the library is loaded. See <a href="http://bugs.eclipse.org/248595" class="external text" title="http://bugs.eclipse.org/248595" rel="nofollow">bug 248595</a>. This feature is currently only supported when using GDB 6.8 or later.
|
||||||
|
</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Showing cores in Debug view labels</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>By using the enhancements of GDB 7.1, DSF-GDB now shows the core on which each thread runs as an extra part of the Debug View label. The list of all cores on which a process is located is also added as a label. The below image shows the new feature.
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/80/CoreLabels.png" alt="Image:CoreLabels.png"></img></p>
|
||||||
|
</p><p>This feature has been implemented for CDT 8.0 as of July 6th, 2010, as part of <a href="http://bugs.eclipse.org/318230" class="external text" title="http://bugs.eclipse.org/318230" rel="nofollow">Bug 318230</a>. The feature will be enabled automatically as long as GDB 7.1 or greater is used.
|
||||||
|
</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Showing cores and owner in attach prompter</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>DSF-GDB now shows the owner of a process as an extra part of the process prompt for an attach session. The owner id will be shown starting with GDB 7.0. For a Remote attach session (using gdbserver --multi), the cores on which a process is located will also be shown. Showing the cores starts with GDB 7.1. The below image shows the new feature.
|
||||||
|
</p><p><img src="../images/80/UserAndCores.jpg" alt="Image:UserAndCores.jpg"></img></p>
|
||||||
|
<p>This feature has been implemented for CDT 8.0 as of July 30th, 2010, as part of <a href="http://bugs.eclipse.org/318230#21" class="external text" title="http://bugs.eclipse.org/318230#21" rel="nofollow">Bug 318230 comment 21</a>. The feature will be enabled automatically as long as the proper version of GDB is used.
|
||||||
|
</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Pin & Clone</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>Variables, Expressions, Registers, Disassembly, and Memory Browser now supports opening multiple instances, and pin the view input to the selected debug context(s) in the Debug view. This can be used, for example, to easily compare the data of different threads.
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/80/PinCloneDebug.png" alt="Image:PinCloneDebug.png"></img></p>
|
||||||
|
<p>This feature has been implemented for CDT 8.0 as of Feb 15th, 2011, as part of <a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=327263" class="external text" title="http://bugs.eclipse.org/bugs/show_bug.cgi?id=327263" rel="nofollow">Bug 327263</a>, <a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=331781" class="external text" title="http://bugs.eclipse.org/bugs/show_bug.cgi?id=331781" rel="nofollow">Bug 331781</a>, and <a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=334566" class="external text" title="http://bugs.eclipse.org/bugs/show_bug.cgi?id=334566" rel="nofollow">Bug 334566</a>.
|
||||||
|
</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Multi-process Debugging</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>CDT now supports debugging multiple processes in a single debug session. It allows to attach/detach and start/stop processes repeatedly and easily.
|
||||||
|
</p><p>Requirements:
|
||||||
|
</p>
|
||||||
|
<ul><li>GDB 7.2 or greater
|
||||||
|
</li><li>Currently, only Non-Stop debugging sessions support multiple processes.
|
||||||
|
</li><li>Note that this feature was developed and tested on Linux systems, and may not work on Windows.
|
||||||
|
</li></ul>
|
||||||
|
<p>To use multi-process debugging, simply launch an application as you normally would, locally or remotely, using gdbserver, and make sure to select Non-stop mode in the Debugger tab. Then, use the Debug View's "Connect" button to trigger a dialog with allows you to either attach to a running process, or to create a new process using the "New..." button. Currently, the "New..." button is only supported for Local debug sessions.
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/80/MultiAttachDialog.png" alt="Image:MultiAttachDialog.png"></img></p>
|
||||||
|
</p><p><br>
|
||||||
|
</p><p>You will then have the newly selected process added to your debug session, where you can control it and examine it. You can use the "Disconnect" button to remove processes from your debug session, or you can use the "Connect" button to add new ones.
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/80/MultiProducerConsumer.png" alt="Image:MultiProducerConsumer.png"></img></p>
|
||||||
|
</p><p><br>
|
||||||
|
</p><p>An option to automatically attach to a forked process is also available. This means that whenever any process you are currently debugging forks a new process, that new process will be added to your debug session.
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/80/AutoAttachOption.png" alt="Image:AutoAttachOption.png"></img></p>
|
||||||
|
</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">C/C++ Remote Application launch</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>The optional "C/C++ Remote Application" launch configuration type has been made permanent for CDT.
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/80/Debugconfig.jpg" alt="Image:Debugconfig.jpg"></img></p>
|
||||||
|
<p>The "GDB (DSF) Remote System Process" launch delegate has been renamed to "GDB (DSF) Manual Remote Debugging" and has been moved from "C/C++ Application" to "C/C++ Remote Application". As was the case for CDT 7.0, the optional RSE Remote Launch delegate of org.eclipse.cdt.launch.remote, is still part of "C/C++ Remote Application".
|
||||||
|
</p><p>This optional remote launch now provides a new DSF-GDB-based launch delegate called "GDB (DSF) Automatic Remote Debugging". This launch is very similar to the existing "GDB (DSF) Manual Remote Debugging" delegate, except that the automatic one will automatically download the application to the remote target and start gdbserver with the application.
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/80/RemoteDelegates.jpg" alt="Image:RemoteDelegates.jpg"></img></p>
|
||||||
|
<p>By default, the user will be shown the "GDB (DSF) Manual Remote Debugging". However, if the optional feature of Remote Launch is installed, the default will automatically become the more feature-rich "GDB (DSF) Automatic Remote Debugging".
|
||||||
|
</p><p>Finally, the run-mode RSE Remote Launch delegate no longer shows the Debugger or Source tabs, since they were not relevant, in run-mode.
|
||||||
|
</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">New set of preferences</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>A set of new preferences have been added to <i>Preferences->C/C++->Debug->GDB</i> to allow users to have a better debugging experience. These new preference are:
|
||||||
|
</p>
|
||||||
|
<ul><li>Default GDB path and initialization file: default path for the location of GDB as well as for the GDB initialization file.
|
||||||
|
</li><li>Default behavior for <i>Stop on startup</i>: default behavior to stop the execution on startup, and on what symbol.
|
||||||
|
</li><li>Default Non-stop mode: default behavior to automatically enable non-stop mode or not. Non-stop mode allows to control the execution of threads and processes independently.
|
||||||
|
</li><li>Default limit for GDB Traces: limits the amount of traces printed on the <i>gdb traces</i> console
|
||||||
|
</li><li>Default enabling of pretty-printing: assuming a pretty-printing enabled GDB, automatically enabled pretty-printing in CDT
|
||||||
|
</li><li>Default child limit for pretty-printing: default to control the amount of children automatically shown by a pretty-printer
|
||||||
|
</li></ul>
|
||||||
|
<p><img src="../images/80/DefaultGdbPreference.png" alt="Image:DefaultGdbPreference.png"></img></p>
|
||||||
|
<p><br> The values of most of these preferences will be used to populate the corresponding entries of the Debugger tab, whenever a new launch is created.
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/80/LaunchDefaultGdb.png" alt="Image:LaunchDefaultGdb.png"></img></p>
|
||||||
|
</p><p><br> This feature has been implemented for CDT 8.0 as as part of <a href="http://bugs.eclipse.org/120162" class="external text" title="http://bugs.eclipse.org/120162" rel="nofollow">Bug 120162</a>, <a href="http://bugs.eclipse.org/347245" class="external text" title="http://bugs.eclipse.org/347245" rel="nofollow">Bug 347245</a> and <a href="http://bugs.eclipse.org/335895" class="external text" title="http://bugs.eclipse.org/335895" rel="nofollow">Bug 335895</a>.
|
||||||
|
</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Extra node for debugged process no longer shown</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>The debugged process extra launch node has been removed from the Debug view. This node was felt to waste space, especially when dealing with multi-process debugging as we would have needed many of them. The Debug view already shows the debugged process as a container of threads, right below the launch node.
|
||||||
|
</p>
|
||||||
|
<p><img src="../images/80/WithInferior.png" alt="Image:WithInferior.png"></img></p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ******************** API Changes and Migration ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="api80"></a>
|
||||||
|
<div class="title">API Changes and Migration to CDT 8.0</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold"></span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>The changes affecting compatibility are listed here. Keep in mind that this list likely does not list all the issues, only some of them.
|
||||||
|
</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">General</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<ol><li>Deprecated class org.eclipse.core.runtime.PluginVersionIdentifier has been changed to use org.osgi.framework.Version. See <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=318581" class="external text" title="https://bugs.eclipse.org/bugs/show_bug.cgi?id=318581" rel="nofollow">bug 318581</a>
|
||||||
|
<ul><li>Affected packages: org.eclipse.cdt.managedbuilder.*.
|
||||||
|
</li></ul>
|
||||||
|
</li><li><i>Use default</i> check box was removed from the New C++ Class dialog. Few protected members related to that check box were removed from org.eclipse.cdt.ui.wizards.NewClassCreationWizardPage class.
|
||||||
|
</li></ol>
|
||||||
|
<p><br>
|
||||||
|
</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">DSF-GDB</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<ol><li>The interface org.eclipse.cdt.dsf.mi.service.command.output.MIListThreadGroupsInfo.IThreadGroupInfo has four new methods. See <a href="http://bugs.eclipse.org/318230#c21" class="external text" title="http://bugs.eclipse.org/318230#c21" rel="nofollow">bug 318230 comment 21</a>
|
||||||
|
<ul><li>String getUser()
|
||||||
|
</li><li>String getType()
|
||||||
|
</li><li>String getCores()
|
||||||
|
</li><li>String getExecutable()
|
||||||
|
</li></ul>
|
||||||
|
</li><li>The interface org.eclipse.cdt.dsf.gdb.service.command.IGDBControl has a new method: List<String> getFeatures(). See <a href="http://bugs.eclipse.org/322658" class="external text" title="http://bugs.eclipse.org/322658" rel="nofollow">bug 322658</a>
|
||||||
|
</li><li>The interface org.eclipse.cdt.dsf.gdb.service.command.IGDBControl no longer has the three methods: start(...), restart(...) and canRestart(...). Those methods are moved to org.eclipse.cdt.dsf.gdb.service.IGDBProcesses and have a new signature.
|
||||||
|
</li><li>org.eclipse.cdt.dsf.gdb.service.command.GDBControl and org.eclipse.cdt.dsf.gdb.service.command.GDBControl_7_0 no longer implement the five methods: start(...), restart(...), canRestart(...), startOrRestart(...), useContinueCommand(...) which are now implemented in org.eclipse.cdt.dsf.gdb.service.command.GDBProcesses and org.eclipse.cdt.dsf.gdb.service.command.GDBProcesses_7_0
|
||||||
|
</li><li>All the constructors of class org.eclipse.cdt.dsf.mi.service.command.commands.MIBreakInsert now take an extra parameter at the end of the parameter list: boolean allowPending. When this parameter is set to true, -break-insert will be used with the -f option, which asks GDB to make the breakpoint pending if the installation fails. This flag can only be enabled for GDB >= 6.8. See <a href="http://bugs.eclipse.org/248595" class="external text" title="http://bugs.eclipse.org/248595" rel="nofollow">bug 248595</a>
|
||||||
|
</li><li>The interface org.eclipse.cdt.dsf.debug.service.IProcesses.IMIProcesses has a new method: IMIContainerDMContext createContainerContextFromGroupId(...). See <a href="http://bugs.eclipse.org/317500" class="external text" title="http://bugs.eclipse.org/317500" rel="nofollow">bug 317500</a>
|
||||||
|
</li><li>The file of constants org.eclipse.cdt.dsf.gdb.internal.ui.preferences.IGdbDebugPreferenceConstants has been removed. It was deprecated and had already been replaced by org.eclipse.cdt.dsf.gdb.IGdbDebugPreferenceConstants
|
||||||
|
</li><li>The interface org.eclipse.cdt.dsf.mi.service.IMIRunControl has a new method: IRunMode getRunMode(). See <a href="http://bugs.eclipse.org/334463" class="external text" title="http://bugs.eclipse.org/334463" rel="nofollow">bug 334463</a>
|
||||||
|
</li><li>FinalLaunchSequence has dramatically changed.
|
||||||
|
</li><li>GdbLaunch#addInferiorProcess() is removed.
|
||||||
|
</li><li>GDBControl.InferiorInputOutputInitStep is removed.
|
||||||
|
</li><li>GDBControl_7_0.InferiorInputOutputInitStep is removed.
|
||||||
|
</li><li>The interface IMIRunControl has the new method isTargetAcceptingCommands() as part of <a href="http://bugs.eclipse.org/339047" class="external text" title="http://bugs.eclipse.org/339047" rel="nofollow">Bug 339047</a>
|
||||||
|
</li><li>IGDBControl, GDBControl and GDBControl_7_0, no longer have the three methods: initInferiorInputOutput(), createInferiorProcess() and getInferiorProcess() as part of <a href="http://bugs.eclipse.org/237308" class="external text" title="http://bugs.eclipse.org/237308" rel="nofollow">Bug 237308</a>
|
||||||
|
</li><li>MIInferiorProcess's constructors have changed, and many of its public methods are removed (getState(), getPid(), setPid(), etc) as part of <a href="http://bugs.eclipse.org/237308" class="external text" title="http://bugs.eclipse.org/237308" rel="nofollow">Bug 237308</a>
|
||||||
|
</li><li>CommandFactory#createMIInferiorTTYSet() has changed signature as part of <a href="http://bugs.eclipse.org/237308" class="external text" title="http://bugs.eclipse.org/237308" rel="nofollow">Bug 237308</a>
|
||||||
|
</li><li>The constructor to MIInferiorTTYSet has changed signature as part of <a href="http://bugs.eclipse.org/237308" class="external text" title="http://bugs.eclipse.org/237308" rel="nofollow">Bug 237308</a>
|
||||||
|
</li><li>IGDBProcesses gets the new method attachDebuggerToProcess() as part of <a href="http://bugs.eclipse.org/237306" class="external text" title="http://bugs.eclipse.org/237306" rel="nofollow">Bug 237306</a>
|
||||||
|
</li><li>GdbInferiorProcess no longer exists. Its base class, MIInferiorProcess should be used directly.
|
||||||
|
</li><li>GDBBackend.doInitialize(), GDBControl.doInitialize() and GDBControl_7_0.doInitialize() are now private. Having them as public was a bug that would break versioning of the service. See <a href="http://bugs.eclipse.org/341465" class="external text" title="http://bugs.eclipse.org/341465" rel="nofollow">Bug 341465</a>
|
||||||
|
</li><li>GDBControlDMContext no longer implements IBreakpointsTargetDMContext or IDisassemblyDMContext. Although not an API breaking change it has significant impacts. Mostly that code such as
|
||||||
|
</li></ol>
|
||||||
|
<pre>(IBreakpointsTargetDMContext)fCommandControl.getContext() // Will fail with an Invalid Cast exception
|
||||||
|
(IDisassemblyDMContext)fCommandControl.getContext() // Will fail with an Invalid Cast exception
|
||||||
|
</pre>
|
||||||
|
<p>will now fail because the command control context is no longer an IBreakpointsTargetDMContext/IDisassemblyDMContext. Instead, MIContainerDMC now implements IBreakpointsTargetDMContext/IDisassemblyDMContext. This change was necessary to fully support multi-process and was done in <a href="http://bugs.eclipse.org/335324" class="external text" title="http://bugs.eclipse.org/335324" rel="nofollow">bug 335324</a> and <a href="http://bugs.eclipse.org/344298" class="external text" title="http://bugs.eclipse.org/344298" rel="nofollow">bug 344298</a>.
|
||||||
|
</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Codan</span></p>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<p>The class org.eclipse.cdt.codan.core.cxx.model.CxxModelsCache is no longer a singleton.</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ******************** Bugs fixed ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="bugs80"></a>
|
||||||
|
<div class="title">Bugs Fixed</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Fixed</span></p>
|
||||||
|
</td>
|
||||||
|
<td>Bugzilla tasks completed for this release:
|
||||||
|
<a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced;bug_status=RESOLVED;bug_status=VERIFIED;bug_status=CLOSED;resolution=FIXED;target_milestone=7.0.1;target_milestone=7.0.2;target_milestone=7.0.3;target_milestone=8.0;product=CDT;classification=Tools">
|
||||||
|
CDT 8.0 bug fixes</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<!-- ******************** Known Limitations ********************** -->
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><a name="known_limitations"></a>
|
||||||
|
<div class="title">Known Limitations</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<p style="text-align:right"><span class="bold">Limitations</span></p>
|
||||||
|
</td>
|
||||||
|
<td>Cannot run or debug class in a project with GB18030 characters in workspace/project name.
|
||||||
|
Most class libraries do not properly support the creation of a system process (via java.lang.Runtime.exec(...))
|
||||||
|
when the specified command line contains GB18030 characters. This limitation means the scanner
|
||||||
|
discovery mechanism and debugger cannot launch applications when the command line it generates
|
||||||
|
contains GB18030 characters. Details in <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=308803">Bug 308803</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<p>To learn what's new in CDT releases see:</p>
|
||||||
|
<p><a href="cdt_c_whatsnew.htm">CDT - New and Noteworthy</a></p>
|
||||||
|
<p><a href="cdt_c_whatsnew_81.htm">CDT 8.1 - New and Noteworthy</a></p>
|
||||||
|
<p><a href="cdt_c_whatsnew_80.htm">CDT 8.0 - New and Noteworthy</a></p>
|
||||||
|
<p><a href="cdt_c_whatsnew_70.htm">CDT 7.0 - New and Noteworthy</a></p>
|
||||||
|
<p><a href="cdt_c_whatsnew_60.htm">CDT 6.0 - New and Noteworthy</a></p>
|
||||||
|
<p><a href="http://wiki.eclipse.org/CDT/User/NewIn50">CDT 5.0 - New and Noteworthy</a></p>
|
||||||
|
|
||||||
|
<p><a href="#top">Back to Top</a>
|
||||||
|
|
||||||
|
<p> </p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
|
@ -0,0 +1,400 @@
|
||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||||
|
<meta name="keywords" content="CDT/User/NewIn81" />
|
||||||
|
|
||||||
|
<title>CDT 8.1 New and Noteworthy</title>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1 id="top">CDT 8.1 - New and Noteworthy</h1>
|
||||||
|
<p>See <a href="http://wiki.eclipse.org/CDT/User/NewIn81">What's new in CDT 8.1</a> on the CDT Wiki
|
||||||
|
which may contain more recent information.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<table id="toc" class="toc" summary="Contents"><tr><td><div id="toctitle"><h2>Contents</h2></div>
|
||||||
|
<ul>
|
||||||
|
<li class="toclevel-1"><a href="#Editor"><span class="tocnumber">1</span> <span class="toctext">Editor</span></a>
|
||||||
|
<ul>
|
||||||
|
<li class="toclevel-2"><a href="#Pin_the_Call_Hierarchy_View"><span class="tocnumber">1.1</span> <span class="toctext">Pin the Call Hierarchy View</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Filtering_in_Outline_Views"><span class="tocnumber">1.2</span> <span class="toctext">Filtering in Outline Views</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Mouse_Hover_for_auto_Keyword"><span class="tocnumber">1.3</span> <span class="toctext">Mouse Hover for 'auto' Keyword</span></a></li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li class="toclevel-1"><a href="#Refactoring"><span class="tocnumber">2</span> <span class="toctext">Refactoring</span></a></li>
|
||||||
|
<li class="toclevel-1"><a href="#Indexing"><span class="tocnumber">3</span> <span class="toctext">Indexing</span></a></li>
|
||||||
|
<li class="toclevel-1"><a href="#Code_Analysis"><span class="tocnumber">4</span> <span class="toctext">Code Analysis</span></a>
|
||||||
|
<ul>
|
||||||
|
<li class="toclevel-2"><a href="#External-tool-based_Checkers"><span class="tocnumber">4.1</span> <span class="toctext">External-tool-based Checkers</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#New_Codan_checkers"><span class="tocnumber">4.2</span> <span class="toctext">New Codan checkers</span></a></li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li class="toclevel-1"><a href="#Build"><span class="tocnumber">5</span> <span class="toctext">Build</span></a>
|
||||||
|
<ul>
|
||||||
|
<li class="toclevel-2"><a href="#Scanner_Discovery"><span class="tocnumber">5.1</span> <span class="toctext">Scanner Discovery</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Mac_OSX_Frameworks"><span class="tocnumber">5.2</span> <span class="toctext">Mac OSX Frameworks</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Console"><span class="tocnumber">5.3</span> <span class="toctext">Console</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Parallel_Build"><span class="tocnumber">5.4</span> <span class="toctext">Parallel Build</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Managed_Build"><span class="tocnumber">5.5</span> <span class="toctext">Managed Build</span></a></li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li class="toclevel-1"><a href="#Debug"><span class="tocnumber">6</span> <span class="toctext">Debug</span></a>
|
||||||
|
<ul>
|
||||||
|
<li class="toclevel-2"><a href="#Multicore_Visualizer_View"><span class="tocnumber">6.1</span> <span class="toctext">Multicore Visualizer View</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Partitioning_of_large_arrays"><span class="tocnumber">6.2</span> <span class="toctext">Partitioning of large arrays</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Edit_Breakpoint_on_Create"><span class="tocnumber">6.3</span> <span class="toctext">Edit Breakpoint on Create</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Breakpoint_Toggle_Short-Cuts"><span class="tocnumber">6.4</span> <span class="toctext">Breakpoint Toggle Short-Cuts</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Function_Breakpoint_Manual_Entry"><span class="tocnumber">6.5</span> <span class="toctext">Function Breakpoint Manual Entry</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Advanced_character_encoding_support"><span class="tocnumber">6.6</span> <span class="toctext">Advanced character encoding support</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Timeout_support_for_GDB_commands_in_DSF.2FGDB"><span class="tocnumber">6.7</span> <span class="toctext">Timeout support for GDB commands in DSF/GDB</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Multi-select_Resume.2FSuspend_operations"><span class="tocnumber">6.8</span> <span class="toctext">Multi-select Resume/Suspend operations</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Show_only_suspended_threads_in_Debug_view"><span class="tocnumber">6.9</span> <span class="toctext">Show only suspended threads in Debug view</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Multi-select_attach_dialog"><span class="tocnumber">6.10</span> <span class="toctext">Multi-select attach dialog</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Default_Postmortem_file_location"><span class="tocnumber">6.11</span> <span class="toctext">Default Postmortem file location</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Support_for_Fast_Tracepoints"><span class="tocnumber">6.12</span> <span class="toctext">Support for Fast Tracepoints</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Enhancements_to_Tracepoints"><span class="tocnumber">6.13</span> <span class="toctext">Enhancements to Tracepoints</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Show_the_actual_variable_type_based_on_RTTI"><span class="tocnumber">6.14</span> <span class="toctext">Show the actual variable type based on RTTI</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Build_variables_support_in_.22C.2FC.2B.2B_Application.22_field_of_launch_configuration"><span class="tocnumber">6.15</span> <span class="toctext">Build variables support in "C/C++ Application" field of launch configuration</span></a></li>
|
||||||
|
<li class="toclevel-2"><a href="#Support_for_octal_number_format_in_CDI"><span class="tocnumber">6.16</span> <span class="toctext">Support for octal number format in CDI</span></a></li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li class="toclevel-1"><a href="#C.2FC.2B.2B_Unit_Testing_Support"><span class="tocnumber">7</span> <span class="toctext">C/C++ Unit Testing Support</span></a></li>
|
||||||
|
<li class="toclevel-1"><a href="#Bugs_Fixed"><span class="tocnumber">8</span> <span class="toctext">Bugs Fixed in this Release</span></a></li>
|
||||||
|
</ul>
|
||||||
|
</td></tr></table>
|
||||||
|
|
||||||
|
<a name="Editor"></a><h2> <span class="headline"> Editor </span></h2>
|
||||||
|
<a name="Pin_the_Call_Hierarchy_View"></a><h3> <span class="headline"> Pin the Call Hierarchy View </span></h3>
|
||||||
|
<p>The Call Hierarchy View can now be pinned which enables the user to open multiple Call Hierarchy views at the same time.
|
||||||
|
</p><p><img alt="Image:Pin view call hierarchy.png" src="../images/cdt81/pin_view_call_hierarchy.png" width="641" height="153" border="0" />
|
||||||
|
</p><p>This feature was completed November 12th, 2011 as part of <a href="http://bugs.eclipse.org/342498" class="external text" title="http://bugs.eclipse.org/342498" rel="nofollow">Bug 342498</a>
|
||||||
|
</p><p><br />
|
||||||
|
</p>
|
||||||
|
<a name="Filtering_in_Outline_Views"></a><h3> <span class="headline"> Filtering in Outline Views </span></h3>
|
||||||
|
<p>There are a few additional filtering options added to Project Explorer and Outline View:
|
||||||
|
</p><p><img alt="Image:anonymous.png" src="../images/cdt81/anonymous.png" width="1166" height="512" border="0" />
|
||||||
|
</p><p><br />
|
||||||
|
</p>
|
||||||
|
<a name="Mouse_Hover_for_auto_Keyword"></a><h3> <span class="headline"> Mouse Hover for 'auto' Keyword </span></h3>
|
||||||
|
<p>Mouse hover for <b>auto</b> keyword shows deduced type:
|
||||||
|
</p><p><img alt="Image:auto_hover.png" src="../images/cdt81/auto_hover.png" width="380" height="111" border="0" />
|
||||||
|
</p><p><br />
|
||||||
|
</p>
|
||||||
|
<a name="Refactoring"></a><h2> <span class="headline"> Refactoring </span></h2>
|
||||||
|
<ul><li> Code added or changed during refactoring is formatted according to user preferences.
|
||||||
|
</li><li> New code style preferences for refactoring:
|
||||||
|
<p><img alt="Image:code_style.png" src="../images/cdt81/code_style.png" width="645" height="562" border="0" />
|
||||||
|
</p></li></ul>
|
||||||
|
<p><br />
|
||||||
|
</p>
|
||||||
|
<a name="Indexing"></a><h2> <span class="headline"> Indexing </span></h2>
|
||||||
|
<ul><li> Support for multiple variants of the same header file in the index (<a href="http://bugs.eclipse.org/197989" class="external text" title="http://bugs.eclipse.org/197989" rel="nofollow">Bug 197989</a>).
|
||||||
|
</li><li> The <i>C/C++ > Indexer > Index unused headers</i> global preference is turned on by default (<a href="http://bugs.eclipse.org/377992" class="external text" title="http://bugs.eclipse.org/377992" rel="nofollow">Bug 377992</a>).
|
||||||
|
</li><li> New command: <i>Index > Re-resolve Unresolved Includes</i>.
|
||||||
|
</li></ul>
|
||||||
|
<p><br />
|
||||||
|
</p>
|
||||||
|
<a name="Code_Analysis"></a><h2> <span class="headline"> Code Analysis </span></h2>
|
||||||
|
<a name="External-tool-based_Checkers"></a><h3> <span class="headline"> External-tool-based Checkers </span></h3>
|
||||||
|
<p>The main motivation for integrating Codan with external tools is to enjoy all the code checks from mature tools without leaving Eclipse. With the new infrastructure:
|
||||||
|
</p>
|
||||||
|
<ol><li>External tools can be configured using Codan’s preference page
|
||||||
|
</li><li>External tools are invoked automatically when a C/C++ file is saved
|
||||||
|
</li><li>The output of these tools can be displayed as editor markers
|
||||||
|
</li></ol>
|
||||||
|
<p>The new infrastructure includes a sample checker that invokes <a href="http://cppcheck.sourceforge.net/" class="external text" title="http://cppcheck.sourceforge.net/" rel="nofollow">Cppcheck</a>.
|
||||||
|
</p><p><img alt="Image:Cppcheck-config-1.png" src="../images/cdt81/cppcheck_config_1.png" width="628" height="571" border="0" />
|
||||||
|
</p><p>A more detailed configuration dialog can be found by pressing the 'Customize Selected' button:
|
||||||
|
</p><p><img alt="Image:Cppcheck-config-2.png" src="../images/cdt81/cppcheck_config_2.png" width="556" height="413" border="0" />
|
||||||
|
</p><p>Users can specify the path of the Cppcheck executable and the arguments to pass to Cppcheck.
|
||||||
|
</p><p>A demo of this checker can be found <a href="http://www.youtube.com/watch?feature=player_embedded&v=_OKpQ-W09MU" class="external text" title="http://www.youtube.com/watch?feature=player_embedded&v=_OKpQ-W09MU" rel="nofollow">here</a>.
|
||||||
|
</p><p>The new infrastructure makes it very easy to write your own external-tool-based checker. In the simplest case, you will need to:
|
||||||
|
</p>
|
||||||
|
<ul><li>Extend the abstract class AbstractExternalToolBasedChecker.
|
||||||
|
</li><li>Provide the name of your tool (e.g. "Cppcheck".)
|
||||||
|
</li><li>Provide default values for the path of the executable and arguments to pass to the executable.
|
||||||
|
</li><li>Register a IErrorParser in the extension point "org.eclipse.cdt.core.ErrorParser" with context "codan". This parser parses the output of the external tool, line by line. It’s up to you to decide what to do with the output (e.g. create error markers.)
|
||||||
|
</li></ul>
|
||||||
|
<p>Please take a look at the source code of CppcheckChecker for details.
|
||||||
|
</p><p>In the case of tools that are complex to set up, the new infrastructure is extremely flexible and configurable. It allows you to pretty much to configure every single aspect of the checker, from the files that the tool can check to the way to feed arguments to the tool.
|
||||||
|
</p>
|
||||||
|
<a name="New_Codan_checkers"></a><h3> <span class="headline"> New Codan checkers </span></h3>
|
||||||
|
<ul><li> Class members should be properly initialized (<a href="http://bugs.eclipse.org/339795" class="external text" title="http://bugs.eclipse.org/339795" rel="nofollow">Bug 339795</a>). Example:
|
||||||
|
</li></ul>
|
||||||
|
<pre> struct Demo {
|
||||||
|
Demo() {} // Warning: Member 'field' was not initialized in this constructor
|
||||||
|
|
||||||
|
int field;
|
||||||
|
};
|
||||||
|
</pre>
|
||||||
|
<p><br />
|
||||||
|
</p>
|
||||||
|
<a name="Build"></a><h2> <span class="headline"> Build </span></h2>
|
||||||
|
<a name="Scanner_Discovery"></a><h3> <span class="headline"> Scanner Discovery </span></h3>
|
||||||
|
<p>Scanner Discovery has been reworked in this release. The main purpose of Scanner Discovery was always to supply Include Paths and Macros for indexer and build. Now these are supplied by Language Settings Providers. See more at <a href="http://wiki.eclipse.org/CDT/ScannerDiscovery61" class="external text">Scanner Discovery</a> on the wiki.
|
||||||
|
</p><p><img alt="Image:sd90Entries.png" src="../images/cdt81/sd90entries.png" width="1111" height="736" border="0" />
|
||||||
|
</p><p><img alt="Image:sd90Providers.png" src="../images/cdt81/sd90providers.png" width="1177" height="736" border="0" />
|
||||||
|
</p><p><br />
|
||||||
|
</p>
|
||||||
|
<a name="Mac_OSX_Frameworks"></a><h3> <span class="headline"> Mac OSX Frameworks </span></h3>
|
||||||
|
<p>The new scanner discovery makes it possible to discover and use with indexer Mac OSX Frameworks folders, see <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=69529" class="external text" title="https://bugs.eclipse.org/bugs/show_bug.cgi?id=69529" rel="nofollow">bug 69529</a>
|
||||||
|
</p><p><img alt="Image:Frameworks.png" src="../images/cdt81/frameworks.png" width="450" height="202" border="0" />
|
||||||
|
</p><p><br />
|
||||||
|
</p>
|
||||||
|
<a name="Console"></a><h3> <span class="headline"> Console </span></h3>
|
||||||
|
<p>Build console marks more prominently start and end of build and reports elapsed time:
|
||||||
|
</p><p><img alt="Image:Console81.png" src="../images/cdt81/console81.png" width="635" height="263" border="0" />
|
||||||
|
</p><p><br />
|
||||||
|
</p>
|
||||||
|
<a name="Parallel_Build"></a><h3> <span class="headline"> Parallel Build </span></h3>
|
||||||
|
<p>Parallel Build was remodelled, see <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=259768" class="external text" title="https://bugs.eclipse.org/bugs/show_bug.cgi?id=259768" rel="nofollow">bug 259768</a>:
|
||||||
|
</p><p><img alt="Image:ParallelBuild.png" src="../images/cdt81/parallelbuild.png" width="872" height="461" border="0" />
|
||||||
|
</p><p><br />
|
||||||
|
</p>
|
||||||
|
<a name="Managed_Build"></a><h3> <span class="headline"> Managed Build </span></h3>
|
||||||
|
<p>A few additional options to select from added to managed build, <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=365461" class="external text" title="https://bugs.eclipse.org/bugs/show_bug.cgi?id=365461" rel="nofollow">bug 365461</a>.
|
||||||
|
</p><p><img alt="Image:ExtraWarnings.png" src="../images/cdt81/extrawarnings.png" width="774" height="479" border="0" />
|
||||||
|
</p><p><br />
|
||||||
|
</p>
|
||||||
|
<a name="Debug"></a><h2> <span class="headline"> Debug </span></h2>
|
||||||
|
<a name="Multicore_Visualizer_View"></a><h3> <span class="headline"> Multicore Visualizer View </span></h3>
|
||||||
|
<p>CDT now optionally includes a Multicore Visualizer View. This view displays a graphical representation of the state of the current application. It allows one to click- and drag-select groups of processes/threads, and apply debugging commands to them directly from the visualizer. Selections made in the Visualizer View are reflected automatically in the Debug View, and vice versa. The Multicore Visualizer View is designed to scale to large numbers of cpus and cores-per-cpu on both current and future multicore hardware.
|
||||||
|
</p><p>The Multicore Visualizer View is meant to serve as a high-level visual overview of the current application, and can be used in tandem with the Debug View, which provides more in-depth detail.
|
||||||
|
</p><p>The Multicore Visualizer View is just one example of a visualizer based on the underlying Visualizer Framework plugin. This provides a pluggable, extensible platform for developing visual development tools of this kind.
|
||||||
|
</p><p><img alt="Image:VisualizerSnapshot.png" src="../images/cdt81/visualizersnapshot.png" width="648" height="421" border="0" />
|
||||||
|
</p><p>Note that the Multicore Visualizer will only work using a Linux target; it will not work debugging on a Windows or Mac target. This is a current limitation of GDB which does not provide information about cores, for those targets (at writing, GDB is at version 7.4).
|
||||||
|
</p><p>This feature was completed on February 10th, 2012. For details see <a href="http://bugs.eclipse.org/335027" class="external text" title="http://bugs.eclipse.org/335027" rel="nofollow">Bug 335027</a>
|
||||||
|
</p><p>The Multicore Visualizer is an optional feature of the CDT and must be installed manually. The feature is called <q>C/C++ Multicore Visualizer</q>. Installing it will install both the Multicore Visualizer and the Visualizer Framework. If you only want to install the Visualizer Framework (to build your own visualizer), you can install that feature by itself; it is called <q>CDT Visualizer Framework</q>. Once the features are installed, you can access the Multicore Visualizer (or any other visualizer) by opening the view called <q>Visualizer</q>.
|
||||||
|
</p>
|
||||||
|
<a name="Partitioning_of_large_arrays"></a><h3> <span class="headline"> Partitioning of large arrays </span></h3>
|
||||||
|
<p>CDT now displays large arrays as collections of partitions.
|
||||||
|
</p><p><img alt="Image:LargeArray.png" src="../images/cdt81/largearray.png" width="865" height="354" border="0" />
|
||||||
|
</p><p>This feature was completed on January 26th, 2012 as part of <a href="http://bugs.eclipse.org/365541" class="external text" title="http://bugs.eclipse.org/365541" rel="nofollow">Bug 365541</a>
|
||||||
|
</p>
|
||||||
|
<a name="Edit_Breakpoint_on_Create"></a><h3> <span class="headline"> Edit Breakpoint on Create </span></h3>
|
||||||
|
<p>It is no longer necessary to first create a CDT breakpoint, then edit its properties. Properties such as enabled, ignore count, condition, temporary, can be set while creating the breakpoint.
|
||||||
|
</p><p>There are several methods to open the properties dialog before creating the breakpoint:
|
||||||
|
</p>
|
||||||
|
<ul><li>Add Breakpoint action.
|
||||||
|
<ol><li>In the editor or the disassembly view, bring up the popup menu on the gutter.
|
||||||
|
</li><li>Select the <i>Add Breakpoint...</i> menu item.
|
||||||
|
</li><li>This brings up the breakpoint properties dialog for a line breakpoint pre-filled with the breakpoints location.
|
||||||
|
</li></ol>
|
||||||
|
</li><li>Control-Double Click
|
||||||
|
<ol><li>Hold the <i>Control</i> key while double-clicking on the editor gutter.
|
||||||
|
</li><li>This brings up the breakpoint properties dialog for a line breakpoint pre-filled with the breakpoints location.
|
||||||
|
</li></ol>
|
||||||
|
</li><li><i>Control</i> key with Toggle Method Breakpoint
|
||||||
|
<ol><li>Open the editor's Outline view.
|
||||||
|
</li><li>Right-click on a method to bring up the popup menu.
|
||||||
|
</li><li>Hold the control key while selecting the Toggle Method Breakpoint action.
|
||||||
|
</li><li>This brings up the function breakpoint dialog pre-filled with the method name.
|
||||||
|
</li></ol>
|
||||||
|
</li><li>Add Watchpoint (C/C++)
|
||||||
|
<ol><li>In the Breakpoints view, open the view menu.
|
||||||
|
</li><li>Select the <i>Add Watchpoint (C/C++)...</i> action.
|
||||||
|
</li><li>This brings up the watchpoint properties dialog.
|
||||||
|
</li><li>User must enter the watchpoint expression.
|
||||||
|
</li></ol>
|
||||||
|
</li><li>Add Function Breakpoint (C/C++)
|
||||||
|
<ol><li>In the Breakpoints view, open the view menu.
|
||||||
|
</li><li>Select the <i>Add Function Breakpoint (C/C++)...</i> action.
|
||||||
|
</li><li>This brings up the function breakpoint properties dialog.
|
||||||
|
</li><li>User must enter the function expression.
|
||||||
|
</li></ol>
|
||||||
|
</li></ul>
|
||||||
|
<br />
|
||||||
|
<p><img alt="Image:Cdt n and n 8 1-add breakpoint dialog.png" src="../images/cdt81/cdt_n_and_n_8_1_add_breakpoint_dialog.png" width="631" height="536" border="0" />
|
||||||
|
</p><p>Image: The breakpoint properties dialog for a line breakpoint about to be created.
|
||||||
|
</p>
|
||||||
|
<a name="Breakpoint_Toggle_Short-Cuts"></a><h3> <span class="headline"> Breakpoint Toggle Short-Cuts </span></h3>
|
||||||
|
<p>The Toggle Breakpoint action in the editor and disassembly view menu now supports new behaviors when used with modifier keys:
|
||||||
|
</p>
|
||||||
|
<ul><li>Hold the <i>Shift</i> key while double-clicking on an existing breakpoint in order to enable or disable the breakpoint.
|
||||||
|
</li><li>Hold the <i>Control</i> key while double-clicking on an existing breakpoint in order to bring up the breakpoint properties dialog to edit the existing breakpoint.
|
||||||
|
</li><li>Hold the <i>Control</i> key while double-clicking on a location with no breakpoints, in order to bring up the breakpoint properties dialog to create a new breakpoint.
|
||||||
|
</li></ul>
|
||||||
|
<p><br /> <img alt="Image:Cdt n and n 8 1-editor gutter menu.png" src="../images/cdt81/cdt_n_and_n_8_1_editor_gutter_menu.png" width="432" height="244" border="0" />
|
||||||
|
</p><p>Image:The editor gutter popup menu with the hints for the new accelerators.
|
||||||
|
</p>
|
||||||
|
<a name="Function_Breakpoint_Manual_Entry"></a><h3> <span class="headline"> Function Breakpoint Manual Entry </span></h3>
|
||||||
|
<p>There is a new option for creating a function breakpoint:
|
||||||
|
</p>
|
||||||
|
<ol><li>Open the Breakpoints view menu.
|
||||||
|
</li><li>Select <i>Add Function Breakpoint C/C++</i>.
|
||||||
|
</li><li>Fill in the function name or expression and select OK to create breakpoint.
|
||||||
|
</li></ol>
|
||||||
|
<a name="Advanced_character_encoding_support"></a><h3> <span class="headline"> Advanced character encoding support </span></h3>
|
||||||
|
<p>CDT now supports the handling of different character encodings for strings and wide character strings while debugging. This includes full support for Unicode encodings and many other popular encodings as well. You can select the character and wide character encoding within the Debug preferences.
|
||||||
|
</p><p><img alt="Image:DebugPreferences.png" src="../images/cdt81/debugpreferences.png" width="639" height="368" border="0" />
|
||||||
|
</p><p>CDT will then correctly display strings according to the selected encoding while debugging.
|
||||||
|
</p><p><img alt="Image:CharsetDebug.png" src="../images/cdt81/charsetdebug.png" width="774" height="266" border="0" />
|
||||||
|
</p><p>Note that this feature requires GDB version 7.0 or later. This feature was completed on March 7th, 2012 as part of <a href="http://bugs.eclipse.org/307311" class="external text" title="http://bugs.eclipse.org/307311" rel="nofollow">Bug 307311</a>, <a href="http://bugs.eclipse.org/367456" class="external text" title="http://bugs.eclipse.org/367456" rel="nofollow">Bug 367456</a> and <a href="http://bugs.eclipse.org/370462" class="external text" title="http://bugs.eclipse.org/370462" rel="nofollow">Bug 370462</a>.
|
||||||
|
</p>
|
||||||
|
<a name="Timeout_support_for_GDB_commands_in_DSF.2FGDB"></a><h3> <span class="headline"> Timeout support for GDB commands in DSF/GDB </span></h3>
|
||||||
|
<p>Timeouts for GDB commands are now supported in DSF/GDB. The feature is optional and disabled by default. The timeout values are configurable. When the feature is enabled, custom values can be assigned to some commands, all other commands use the default value. This feature was completed on April 17th, 2012 as part of <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=361934" class="external text" title="https://bugs.eclipse.org/bugs/show_bug.cgi?id=361934" rel="nofollow">Bug 361934</a>.
|
||||||
|
</p><p><img alt="Image:TimeoutPreferences.png" src="../images/cdt81/timeoutpreferences.png" width="629" height="754" border="0" />
|
||||||
|
</p><p><img alt="Image:TimeoutAdvanced.png" src="../images/cdt81/timeoutadvanced.png" width="531" height="244" border="0" />
|
||||||
|
<br />
|
||||||
|
</p>
|
||||||
|
<a name="Multi-select_Resume.2FSuspend_operations"></a><h3> <span class="headline"> Multi-select Resume/Suspend operations </span></h3>
|
||||||
|
<p>CDT now allows to perform a Resume or Suspend operation on multiple selections of the same debug session. Because such a concept only adds value in a Non-Stop debug session, it is only supported in such a session (see <a href="../faq/index.html#What_is_the_difference_between_Non-stop_and_All-stop_multi-threaded_debugging.3F" class="external text" title="http://wiki.eclipse.org/CDT/User/FAQ#What_is_the_difference_between_Non-stop_and_All-stop_multi-threaded_debugging.3F" rel="nofollow">Non-Stop Debugging</a>). The behavior of a multi-selection Resume/Suspend is as follows:
|
||||||
|
</p>
|
||||||
|
<ul><li> Any selected stack frames implies a selection of their corresponding thread.
|
||||||
|
</li><li> If one or more threads are selected (not processes) and the resume/suspend operation is triggered, each selected thread on which the operation is currently valid will be resumed/suspended.
|
||||||
|
</li><li> If one or more processes are selected (not threads) and the resume/suspend operation is triggered, each selected process will be resumed/suspended. Resuming/suspending a process implies resuming/suspending each one of its threads on which the operation is currently valid.
|
||||||
|
</li><li> If both thread(s) and process(es) are selected, and the resume/suspend operation is triggered, each selected process will be resumed/suspended, and each selected thread <b>which is not part of any selected process</b> will be resumed/suspended. The idea is that if a process is being resumed/suspended, each of its threads will be automatically resumed/suspended, and therefore, should not be resumed/suspended a second time because it is also selected.
|
||||||
|
</li></ul>
|
||||||
|
<p>As hinted above, CDT takes a permissive approach to multi-select resume/suspend. This means that if a multi-selection includes both stopped and running threads, a resume operation is still allowed, and only the suspended threads will be resumed; similarly, on such a multi-selection, a suspend operation is allowed, and only the running threads will be suspended.
|
||||||
|
</p>
|
||||||
|
<h4>Example</h4>
|
||||||
|
<p><img alt="Image:MultiSelectRunControl.png" src="../images/cdt81/multiselectruncontrol.png" width="602" height="682" border="0" />
|
||||||
|
</p><p>In the above screenshot if the user were to press the Resume button with the current multi-selection the following would happen:
|
||||||
|
</p>
|
||||||
|
<ol><li> The <i>Consumer</i> process node is selected, therefore the entire process will be resumed. This means that the suspended threads 7 and 9 will be resumed, while threads 6, 8 and 10 will be ignored, as they are already running.
|
||||||
|
</li><li> Note that the fact that threads 9 and 10 are selected is ignored, as those threads are part of the selected <i>Consumer</i> process, which will be resumed.
|
||||||
|
</li><li> Stack frames <i>doWork()</i> and <i>work()</i> are selected and belong to thread 4, which becomes implicitly selected in their place. Thread 4 will therefore be resumed.
|
||||||
|
</li><li> Thread 2 is selected and suspended, and will be resumed.
|
||||||
|
</li><li> Thread 5 is selected but running, so it will be ignored.
|
||||||
|
</li></ol>
|
||||||
|
<p>This feature was completed April 25th, 2012 as part of <a href="http://bugs.eclipse.org/330974" class="external text" title="http://bugs.eclipse.org/330974" rel="nofollow">Bug 330974</a>
|
||||||
|
</p>
|
||||||
|
<a name="Show_only_suspended_threads_in_Debug_view"></a><h3> <span class="headline"> Show only suspended threads in Debug view </span></h3>
|
||||||
|
<p>CDT now has an global preference that allows to only show the suspended threads within the Debug view. When dealing with a large number of threads, a user is typically interested by the threads that are being inspected (suspended ones) and does not care about the running ones. Using this preference, all running threads will not be shown in the Debug view. Note that when a thread is stepping it will remain visible, although it is technically running. The process element of the Debug view will show how many threads are currently being filtered from view.
|
||||||
|
</p><p>The below example shows the exact same debugging session. The first screenshot only shows suspended threads, while the second shows all threads.
|
||||||
|
</p><p><img alt="Image:CDT_Debug_WithHiding.png" src="../images/cdt81/cdt_debug_withhiding.png" width="681" height="377" border="0" />
|
||||||
|
</p><p><img alt="Image:CDT_Debug_NoHiding.png" src="../images/cdt81/cdt_debug_nohiding.png" width="554" height="494" border="0" />
|
||||||
|
</p><p>Below shows how to access the preference, which is disabled by default.
|
||||||
|
</p><p><img alt="Image:CDT_Debug_HidingPref.png" src="../images/cdt81/cdt_debug_hidingpref.png" width="554" height="564" border="0" />
|
||||||
|
</p><p>This feature was completed May 4th, 2012 as part of <a href="http://bugs.eclipse.org/375585" class="external text" title="http://bugs.eclipse.org/375585" rel="nofollow">Bug 375585</a>
|
||||||
|
</p>
|
||||||
|
<a name="Multi-select_attach_dialog"></a><h3> <span class="headline"> Multi-select attach dialog </span></h3>
|
||||||
|
<p>CDT now allows selecting more than one process to attach to in a single user operation. The bottom pane is used to see which processes have been selected. If multi-process debugging is not supported with your debug session (needs GDB >= 7.2 and NonStop enabled), only the first process will be attached to.
|
||||||
|
</p><p><img alt="Image:Multiselect.png" src="../images/cdt81/multiselect.png" width="436" height="553" border="0" />
|
||||||
|
</p><p>This feature was completed June 30th, 2011 as part of <a href="http://bugs.eclipse.org/293679" class="external text" title="http://bugs.eclipse.org/293679" rel="nofollow">Bug 293679</a>
|
||||||
|
</p>
|
||||||
|
<a name="Default_Postmortem_file_location"></a><h3> <span class="headline"> Default Postmortem file location </span></h3>
|
||||||
|
<p>CDT now allows the user to specify a default directory for the location of core files for a postmortem launch when the prompt is triggered. Since a postmortem launch can easily be re-used for different core files of the same binary, this feature helps reduce the amount of navigation needed to select a core file. Note that specifying the actual core file is still supported, as well as leaving the entire field blank, which will also trigger the prompt, but use the default directory for its starting location.
|
||||||
|
</p><p>Note that this 'core file' field supports the use of variables such as ${workspace_loc}.
|
||||||
|
</p><p>This feature applies to both core files and trace files.
|
||||||
|
</p><p><img alt="Image:CorePath.png" src="../images/cdt81/corepath.png" width="937" height="714" border="0" />
|
||||||
|
</p><p>This feature was completed on February 17th, 2012 as part of <a href="http://bugs.eclipse.org/362039" class="external text" title="http://bugs.eclipse.org/362039" rel="nofollow">Bug 362039</a>
|
||||||
|
</p>
|
||||||
|
<a name="Support_for_Fast_Tracepoints"></a><h3> <span class="headline"> Support for Fast Tracepoints </span></h3>
|
||||||
|
<p>CDT now allows the user of fast tracepoints, as supported by GDB. Fast tracepoints use an instruction jump instead of a trap for efficiency. Fast tracepoint need a minimum of space to be inserted in the program and therefore, may fail to be set at certain locations. For fast tracepoints to work, a special library called the in-process agent (IPA), must be loaded in the inferior process. This library is built and distributed as an integral part of gdbserver. Please see the GDB documentation for more details.
|
||||||
|
</p><p>The user can select between three tracepoint modes in the launch:
|
||||||
|
</p>
|
||||||
|
<ol><li><b>Fast</b>: Only use fast tracepoints. No tracepoint will be planted if a fast tracepoint cannot be used.
|
||||||
|
</li><li><b>Normal</b>: Only use normal tracepoints.
|
||||||
|
</li><li><b>Automatic</b>: Attempt to use fast tracepoints. If a fast tracepoint cannot be used, automatically use a normal tracepoint.
|
||||||
|
</li></ol>
|
||||||
|
<p><img alt="Image:FastTracepointSelection.png" src="../images/cdt81/fasttracepointselection.png" width="900" height="500" border="0" />
|
||||||
|
</p><p>This feature was completed July 20th, 2011 as part of <a href="http://bugs.eclipse.org/346320" class="external text" title="http://bugs.eclipse.org/346320" rel="nofollow">Bug 346320</a>
|
||||||
|
</p>
|
||||||
|
<a name="Enhancements_to_Tracepoints"></a><h3> <span class="headline"> Enhancements to Tracepoints </span></h3>
|
||||||
|
<p>With the use of GDB 7.4, some new features are available within Eclipse.
|
||||||
|
</p>
|
||||||
|
<ul><li>Live enable/disable of C/C++ Tracepoints
|
||||||
|
<ul><li>Tracepoints can now be enabled and disabled at any time after a trace experiment has been started, and will immediately take effect within the ongoing experiment.
|
||||||
|
</li><li><b>Note:</b> Although GDB 7.4 seems to allow a tracepoint to be created during a trace experiment and will add it to the ongoing experiment, this behavior seems to have some issues. One of which is that deleting a tracepoint during an experiment will <b>not</b> remove that tracepoint from the ongoing experiment. Until this is fixed in GDB, it is recommended that the user stick to enable/disable operations during a tracing experiment.<br />
|
||||||
|
</li></ul>
|
||||||
|
</li><li>Smaller Fast tracepoints
|
||||||
|
<ul><li>On 32-bit x86-architectures, fast tracepoints can now be placed at locations with 4-byte instructions, when they were previously limited to locations with instructions of 5 bytes or longer.
|
||||||
|
</li></ul>
|
||||||
|
</li><li>Tracepoint collecting of Strings
|
||||||
|
<ul><li>The tracepoint Collect action now has an option to request to collect character pointers as strings. It tells GDB to effectively dereference pointer-to-character types and collect the bytes of memory up to a zero byte. An optional integer limit sets a bound on the number of bytes that will be collected. This feature was completed on April 20th, 2012. For details see <a href="http://bugs.eclipse.org/373707" class="external text" title="http://bugs.eclipse.org/373707" rel="nofollow">Bug 373707</a>
|
||||||
|
</li></ul>
|
||||||
|
</li></ul>
|
||||||
|
<p><br />
|
||||||
|
<img alt="Image:CollectString.png" src="../images/cdt81/collectstring.png" width="437" height="304" border="0" />
|
||||||
|
</p>
|
||||||
|
<a name="Show_the_actual_variable_type_based_on_RTTI"></a><h3> <span class="headline"> Show the actual variable type based on RTTI </span></h3>
|
||||||
|
<p>With GDB 7.5 or higher CDT could show the actual variable type (not the declared one) in Variables and Expressions Views. Consider the following example:
|
||||||
|
</p>
|
||||||
|
<pre> struct SuperInterface {
|
||||||
|
virtual ~SuperInterface() {} // enable RTTI for Interface class
|
||||||
|
};
|
||||||
|
|
||||||
|
struct TheImplementation : public SuperInterface {
|
||||||
|
TheImplementation(int _v1, float _v2)
|
||||||
|
: someField(_v1), anotherField(_v2) {}
|
||||||
|
|
||||||
|
int someField;
|
||||||
|
float anotherField;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
int main() {
|
||||||
|
SuperInterface* i = new TheImplementation(42, 4.2);
|
||||||
|
return 0; // [Launch debug until here]
|
||||||
|
}
|
||||||
|
</pre>
|
||||||
|
<p>Launch the debugging session and run until return statement:
|
||||||
|
</p><p><img alt="Image:CDT_Debug_VariableTypeBasedOnRtti.png" src="../images/cdt81/cdt_debug_variabletypebasedonrtti.png" width="493" height="382" border="0" />
|
||||||
|
</p><p>This feature is enabled by default and will work if you have the proper GDB version (7.5 or higher) and RTTI generation enabled (enabled by default in gcc), however it could be turned off in preferences:
|
||||||
|
</p><p><img alt="Image:CDT_Debug_VariableTypeBasedOnRttiPref.png" src="../images/cdt81/cdt_debug_variabletypebasedonrttipref.png" width="842" height="589" border="0" />
|
||||||
|
</p><p>This feature was completed on May 5th, 2012 as part of <a href="http://bugs.eclipse.org/376901" class="external text" title="http://bugs.eclipse.org/376901" rel="nofollow">Bug 376901</a> and <a href="http://bugs.eclipse.org/377536" class="external text" title="http://bugs.eclipse.org/377536" rel="nofollow">Bug 377536</a>.
|
||||||
|
</p>
|
||||||
|
<a name="Build_variables_support_in_.22C.2FC.2B.2B_Application.22_field_of_launch_configuration"></a><h3> <span class="headline"> Build variables support in "C/C++ Application" field of launch configuration </span></h3>
|
||||||
|
<p><img alt="Image:CDT_Debug_VarsInAppplicationField.png" src="../images/cdt81/cdt_debug_varsinappplicationfield.png" width="727" height="556" border="0" />
|
||||||
|
</p><p>There are also a few new CDT-specific build variables:
|
||||||
|
</p>
|
||||||
|
<ul><li> config_name - the name of the active configuration for the project specified as an argument;
|
||||||
|
</li><li> config_description - the description of the active configuration for the project specified as an argument;
|
||||||
|
</li></ul>
|
||||||
|
<p>This feature was completed on April 2nd, 2012 as part of <a href="http://bugs.eclipse.org/180256" class="external text" title="http://bugs.eclipse.org/180256" rel="nofollow">Bug 180256</a> and <a href="http://bugs.eclipse.org/375814" class="external text" title="http://bugs.eclipse.org/375814" rel="nofollow">Bug 375814</a>.
|
||||||
|
</p>
|
||||||
|
<a name="Support_for_octal_number_format_in_CDI"></a><h3> <span class="headline"> Support for octal number format in CDI </span></h3>
|
||||||
|
<p>CDI now also supports to use the octal number format to display the contents of variables, expressions and registers. You can select the octal number format within the Debug preferences. This feature was completed on March 7th, 2012 as part of <a href="http://bugs.eclipse.org/370462" class="external text" title="http://bugs.eclipse.org/370462" rel="nofollow">Bug 370462</a>.
|
||||||
|
</p><p><br />
|
||||||
|
</p>
|
||||||
|
<a name="C.2FC.2B.2B_Unit_Testing_Support"></a><h2> <span class="headline"> C/C++ Unit Testing Support </span></h2>
|
||||||
|
<p><img alt="Image:CUnitTest-View.png" src="../images/cdt81/cunittest_view.png" width="781" height="322" border="0" />
|
||||||
|
</p><p><img alt="Image:CUnitTest-Launch.png" src="../images/cdt81/cunittest_launch.png" width="807" height="506" border="0" />
|
||||||
|
</p><p>Supported features:
|
||||||
|
</p>
|
||||||
|
<ul><li>tests running with support of the following frameworks:
|
||||||
|
<ul><li><a href="http://www.boost.org/doc/libs/1_46_1/libs/test/doc/html/index.html" class="external text" title="http://www.boost.org/doc/libs/1_46_1/libs/test/doc/html/index.html" rel="nofollow">Boost.Test</a>;
|
||||||
|
</li><li><a href="http://doc.qt.nokia.com/solutions/4/qttestlib" class="external text" title="http://doc.qt.nokia.com/solutions/4/qttestlib" rel="nofollow">Qt Test</a>;
|
||||||
|
</li><li><a href="http://code.google.com/p/googletest/" class="external text" title="http://code.google.com/p/googletest/" rel="nofollow">Google Testing Framework</a>;
|
||||||
|
</li></ul>
|
||||||
|
</li><li>tests hierarchy browsing;
|
||||||
|
</li><li>test messages viewing, filtering by test or test suite; source lookup is also supported;
|
||||||
|
</li><li>testing statistics (total/failed/aborted tests count, red/green bar);
|
||||||
|
</li><li>testing time measurement;
|
||||||
|
</li><li>tests hierarchy filters (show only failed tests);
|
||||||
|
</li><li>running & rerunning only selected tests (not a whole test module);
|
||||||
|
</li><li>start a debug session for the whole test module or only the selected tests;
|
||||||
|
</li><li>test messages filters (by severity);
|
||||||
|
</li><li>test runs history;
|
||||||
|
</li><li>the list of provided tests runners may be easily extended writing a new Tests Runner Plugin.
|
||||||
|
</li></ul>
|
||||||
|
<p>The HOWTO, known problems and limitation can be found in the <a href="http://wiki.eclipse.org/CDT/User/FAQ#C.2FC.2B.2B_Unit_Testing_Support" class="external text">CDT FAQ</a> on the wiki.
|
||||||
|
</p><p>This feature was completed April 18th, 2012 as part of <a href="http://bugs.eclipse.org/210366" class="external text" title="http://bugs.eclipse.org/210366" rel="nofollow">Bug 210366</a>.
|
||||||
|
</p>
|
||||||
|
<a name="Bugs_Fixed"></a><h2> <span class="headline"> Bugs Fixed in this Release </span></h2>
|
||||||
|
<p>Bugzilla tasks completed for this release:
|
||||||
|
<a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced;bug_status=RESOLVED;bug_status=VERIFIED;bug_status=CLOSED;resolution=FIXED;target_milestone=8.0.1;target_milestone=8.0.2;target_milestone=8.0.3;target_milestone=8.1;product=CDT;classification=Tools">
|
||||||
|
CDT 8.1 bug fixes</a>
|
||||||
|
</p><p><br />
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h2>What's new in other CDT releases</h2>
|
||||||
|
|
||||||
|
<p>To learn what's new in other CDT releases see:</p>
|
||||||
|
<p><a href="cdt_c_whatsnew.htm">CDT - New and Noteworthy</a></p>
|
||||||
|
<p><a href="cdt_c_whatsnew_81.htm">CDT 8.1 - New and Noteworthy</a></p>
|
||||||
|
<p><a href="cdt_c_whatsnew_80.htm">CDT 8.0 - New and Noteworthy</a></p>
|
||||||
|
<p><a href="cdt_c_whatsnew_70.htm">CDT 7.0 - New and Noteworthy</a></p>
|
||||||
|
<p><a href="cdt_c_whatsnew_60.htm">CDT 6.0 - New and Noteworthy</a></p>
|
||||||
|
<p><a href="http://wiki.eclipse.org/CDT/User/NewIn50">CDT 5.0 - New and Noteworthy</a></p>
|
||||||
|
|
||||||
|
<p><a href="#top">Back to Top</a></p>
|
||||||
|
|
||||||
|
<p> </p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,24 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<title>Build</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Build</h1>
|
||||||
|
<p>This section describes the build views and terminology.</p>
|
||||||
|
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_c_build_over.htm">Building C/C++ Projects</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_c_scanner_discovery.htm">Scanner Discovery of include paths and preprocessor macros</a><br>
|
||||||
|
|
||||||
|
|
||||||
|
<p><img src="../images/ng00_04a.gif" ALT="IBM Copyright Statement" ></p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
|
@ -0,0 +1,23 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<title>Coding aids</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Coding aids</h1>
|
||||||
|
<p>This section provides information on code entry aids.</p>
|
||||||
|
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_c_comments.htm">Comments</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_c_content_assist.htm">Content Assist</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_c_templates.htm">Templates</a><br>
|
||||||
|
|
||||||
|
<p><img src="../images/ng00_04a.gif" ALT="IBM Copyright Statement" ></p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,60 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||||
|
<title>Concepts</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Concepts</h1>
|
||||||
|
|
||||||
|
<p>Provides background information for CDT components, tasks and objectives.</p>
|
||||||
|
|
||||||
|
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_c_over_cdt.htm">CDT Overview</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_c_projects.htm">CDT Projects</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_c_perspectives.htm">Perspectives available to C/C++ developers</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_c_views.htm">Views in the C/C++ perspective</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_o_code_entry.htm">Coding aids</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none" href="cdt_c_comments.htm">Comments</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none" href="cdt_c_content_assist.htm">Content Assist</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none" href="cdt_c_templates.htm">Templates</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_o_edit.htm">Editing C/C++ Files</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none" href="cdt_c_editor.htm">C/C++ editor</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none" href="cdt_c_makefile.htm">Makefile</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_o_nav.htm">Navigation aids</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none" href="cdt_c_outlineview.htm">Outline View</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none" href="cdt_c_proj_file_views.htm">Project File views</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none" href="cdt_c_search.htm">C/C++ Search</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none" href="cdt_c_open_declarations.htm">Open Declaration</a><br>
|
||||||
|
<!--
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none">Open Element</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none">Type Hierarchy</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none">Call Hierarchy</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none">Include Browser</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none">Make Targets View</a><br>
|
||||||
|
-->
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_o_build_conc.htm">Build</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none" href="cdt_c_build_over.htm">Building C/C++ Projects</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none" href="cdt_c_scanner_discovery.htm">Scanner Discovery of include paths and preprocessor macros</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_o_dbg_concepts.htm">Debug</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none" href="cdt_c_brkpnts.htm">Breakpoints</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none" href="cdt_c_over_dbg.htm">Debug overview</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none" href="cdt_c_dbg_info.htm">Debug information</a><br>
|
||||||
|
<!--
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration: none;">Error Parsing</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration: none;">Invoking Make</a><br>
|
||||||
|
-->
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_c_search.htm">C/C++ search</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none" href="cdt_c_indexer.htm">C/C++ Indexer</a><br>
|
||||||
|
<img src="../images/trans.gif" width="50" height="1" alt=""><a style="text-decoration:none" href="cdt_c_indexer_prog_bar.htm">C/C++ Indexer Progress Bar</a><br>
|
||||||
|
|
||||||
|
<p><img src="../images/ng00_07.gif" ALT="IBM Corporation Statement" ></p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
|
@ -0,0 +1,23 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<title>Debug</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Debug</h1>
|
||||||
|
|
||||||
|
<p>This section describes C/C++ debug concepts.</p>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_c_brkpnts.htm">Breakpoints</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_c_over_dbg.htm">Debug overview</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_c_dbg_info.htm">Debug information</a><br>
|
||||||
|
|
||||||
|
<p><img src="../images/ng00_04a.gif" ALT="IBM Copyright Statement" ></p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,20 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<title>Editing C/C++ Files</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Editing C/C++ Files</h1>
|
||||||
|
<p>This section provides information on editing C/C++ files.</p>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_c_editor.htm">C/C++ editor</a><br>
|
||||||
|
|
||||||
|
<p><img src="../images/ng00_07.gif" ALT="IBM Copyright Statement" ></p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,36 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
|
<title>C/C++ Development User Guide</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>C/C++ Development User Guide</h1>
|
||||||
|
|
||||||
|
<p>The C/C++ Development Toolkit (CDT) is a collection of Eclipse-based features that provides the capability
|
||||||
|
to create, edit, navigate, build, and debug projects that use C and/or C++ as a programming language.</p>
|
||||||
|
|
||||||
|
<p>The CDT does not include the necessary compilers and debuggers to convert C/C++ code into executable
|
||||||
|
programs and to debug those programs, but it does provide the frameworks that allow such tools to
|
||||||
|
be integrated in a consistent fashion.
|
||||||
|
This allows you to mix and match such tools depending on your project requirements.</p>
|
||||||
|
|
||||||
|
<p>Often, commercial distributions of the CDT include the necessary tools and integrations. If yours does
|
||||||
|
not, the base CDT does provide support for integration with the GNU tools for build and debug. Please see the
|
||||||
|
<a href="cdt_c_before_you_begin.htm">Before you begin</a> section for installation instructions</p>
|
||||||
|
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_c_before_you_begin.htm">Before you begin</a><br>
|
||||||
|
<br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="../getting_started/cdt_o_tutorial.htm">Getting Started</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_o_concepts.htm">Concepts</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="../tasks/cdt_o_tasks.htm">Tasks</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="../reference/cdt_o_ref.htm">Reference</a><br>
|
||||||
|
<br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_c_whatsnew.htm">What's new</a><br>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,29 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Language" content="en-us">
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||||
|
<title>Navigation Aids</title>
|
||||||
|
<link rel="stylesheet" type="text/css" href="../help.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div role="main">
|
||||||
|
<h1>Navigation Aids</h1>
|
||||||
|
<p>This section provides information on navigating through the C/C++ Perspective.</p>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_c_outlineview.htm">Outline View</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_c_proj_file_views.htm">Project File views</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_c_search.htm">C/C++ Search</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none" href="cdt_c_open_declarations.htm">Open Declaration</a><br>
|
||||||
|
<!--
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none">Open Element</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none">Type Hierarchy</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none">Call Hierarchy</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none">Include Browser</a><br>
|
||||||
|
<img src="../images/trans.gif" width="25" height="1" alt=""><a style="text-decoration:none">Make Targets View</a><br>
|
||||||
|
-->
|
||||||
|
<p><img src="../images/ng00_07.gif" ALT="IBM Copyright Statement" ></p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,163 @@
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<!-- Custom targets called from a project's generated build.xml -->
|
||||||
|
<!-- Set customBuildCallbacks=<path/to/this/file> in your build.properties.-->
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<project name="Build specific targets and properties" default="noDefault">
|
||||||
|
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<!-- Default target -->
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<target name="noDefault">
|
||||||
|
<echo message="This file must be called with explicit targets" />
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<!-- Steps to do before the target build.jars -->
|
||||||
|
<!-- Available parameters : -->
|
||||||
|
<!-- build.result.folder - folder to contain the build results -->
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<target name="pre.build.jars">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<!-- Steps to do after the target build.jars -->
|
||||||
|
<!-- Available parameters : -->
|
||||||
|
<!-- build.result.folder - folder to contain the build results -->
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<target name="post.build.jars">
|
||||||
|
<antcall target="build.index"/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="build.index" description="Builds search index for the plug-in: org.eclipse.rse.doc.user." if="eclipse.running">
|
||||||
|
<help.buildHelpIndex manifest="plugin.xml" destination="."/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<!-- Steps to do before the target build.sources -->
|
||||||
|
<!-- Available parameters : -->
|
||||||
|
<!-- build.result.folder - folder to contain the build results -->
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<target name="pre.build.sources">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<!-- Steps to do after the target build.sources -->
|
||||||
|
<!-- Available parameters : -->
|
||||||
|
<!-- build.result.folder - folder to contain the build results -->
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<target name="post.build.sources">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<!-- Steps to do before the compilation target <name> -->
|
||||||
|
<!-- Substitute "name" with the name of the compilation target, eg @dot -->
|
||||||
|
<!-- Available parameters : -->
|
||||||
|
<!-- source.foldern : n = 1 ... N, the source folders -->
|
||||||
|
<!-- target.folder : where the results of the compilation go -->
|
||||||
|
<!-- <name>.classpath : name = name of the compilation target. A -->
|
||||||
|
<!-- reference to the classpath structure. -->
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<target name="pre.name">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="pre.@dot">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<!-- Steps to do during the compilation target <name>, after the compile -->
|
||||||
|
<!-- but before jaring. Substitute "name" with the name of the compilation-->
|
||||||
|
<!-- target, eg @dot -->
|
||||||
|
<!-- Available parameters : -->
|
||||||
|
<!-- source.foldern : n = 1 ... N, the source folders -->
|
||||||
|
<!-- target.folder : where the results of the compilation go -->
|
||||||
|
<!-- <name>.classpath : name = name of the compilation target. A -->
|
||||||
|
<!-- reference to the classpath structure. -->
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<target name="post.compile.name">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="post.compile.@dot">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<!-- Steps to do after the compilation target <name> -->
|
||||||
|
<!-- Substitute "name" with the name of the compilation target, eg @dot -->
|
||||||
|
<!-- Available parameters : -->
|
||||||
|
<!-- jar.Location - the location of the compilation results -->
|
||||||
|
<!-- <name>.classpath : name = name of the compilation target. A -->
|
||||||
|
<!-- reference to the classpath structure. -->
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<target name="post.name">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="post.@dot">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<!-- Steps to do before the target gather.bin.parts -->
|
||||||
|
<!-- Available parameters : -->
|
||||||
|
<!-- build.result.folder - folder containing the build results -->
|
||||||
|
<!-- target.folder - destination folder -->
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<target name="pre.gather.bin.parts">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<!-- Steps to do after the target gather.bin.parts -->
|
||||||
|
<!-- Available parameters : -->
|
||||||
|
<!-- build.result.folder - folder containing the build results -->
|
||||||
|
<!-- target.folder - destination folder -->
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<target name="post.gather.bin.parts">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<!-- Steps to do before the target gather.sources -->
|
||||||
|
<!-- Available parameters : -->
|
||||||
|
<!-- destination.temp.folder - destination folder -->
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<target name="pre.gather.sources">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<!-- Steps to do after the target gather.sources -->
|
||||||
|
<!-- Available parameters : -->
|
||||||
|
<!-- destination.temp.folder - destination folder -->
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<target name="post.gather.sources">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<!-- Steps to do before the target gather.logs -->
|
||||||
|
<!-- Available parameters : -->
|
||||||
|
<!-- destination.temp.folder - destination folder -->
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<target name="pre.gather.logs">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<!-- Steps to do after the target gather.logs -->
|
||||||
|
<!-- Available parameters : -->
|
||||||
|
<!-- destination.temp.folder - destination folder -->
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<target name="post.gather.logs">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<!-- Steps to do before the target clean -->
|
||||||
|
<!-- Available parameters : -->
|
||||||
|
<!-- destination.temp.folder - destination folder -->
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<target name="pre.clean">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<!-- Steps to do after the target clean -->
|
||||||
|
<!-- Available parameters : -->
|
||||||
|
<!-- plugin.destination - final destination of the build -->
|
||||||
|
<!-- build.result.folder - results of the compilation -->
|
||||||
|
<!-- temp.folder - temporary folder -->
|
||||||
|
<!-- ===================================================================== -->
|
||||||
|
<target name="post.clean">
|
||||||
|
</target>
|
||||||
|
</project>
|
|
@ -0,0 +1,13 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||||
|
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||||
|
<title>Main Topic</title>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<h1>Main Topic</h1>
|
||||||
|
Please enter your text here.
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,13 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||||
|
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||||
|
<title>Sub Topic</title>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<h1>Sub Topic</h1>
|
||||||
|
Please enter your text here.
|
||||||
|
</body>
|
||||||
|
</html>
|
13
debug/org.eclipse.cdt.debug.application.doc/html/toc.html
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||||
|
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||||
|
<title>Table of Contents</title>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<h1>Table of Contents</h1>
|
||||||
|
Please enter your text here.
|
||||||
|
</body>
|
||||||
|
</html>
|
After Width: | Height: | Size: 36 KiB |
BIN
debug/org.eclipse.cdt.debug.application.doc/images/Idea.jpg
Normal file
After Width: | Height: | Size: 5 KiB |
After Width: | Height: | Size: 6.1 KiB |
After Width: | Height: | Size: 224 B |
BIN
debug/org.eclipse.cdt.debug.application.doc/images/back.gif
Normal file
After Width: | Height: | Size: 865 B |
BIN
debug/org.eclipse.cdt.debug.application.doc/images/btn_columns.png
Executable file
After Width: | Height: | Size: 597 B |
BIN
debug/org.eclipse.cdt.debug.application.doc/images/btn_import_executables.png
Executable file
After Width: | Height: | Size: 606 B |
BIN
debug/org.eclipse.cdt.debug.application.doc/images/btn_restart.png
Executable file
After Width: | Height: | Size: 590 B |
After Width: | Height: | Size: 62 KiB |
After Width: | Height: | Size: 27 KiB |
After Width: | Height: | Size: 44 KiB |
After Width: | Height: | Size: 11 KiB |
BIN
debug/org.eclipse.cdt.debug.application.doc/images/c_exe_obj.png
Executable file
After Width: | Height: | Size: 736 B |
After Width: | Height: | Size: 354 B |
BIN
debug/org.eclipse.cdt.debug.application.doc/images/c_object_file.png
Executable file
After Width: | Height: | Size: 699 B |
BIN
debug/org.eclipse.cdt.debug.application.doc/images/c_ovr.gif
Normal file
After Width: | Height: | Size: 81 B |
BIN
debug/org.eclipse.cdt.debug.application.doc/images/c_paths.png
Normal file
After Width: | Height: | Size: 50 KiB |
BIN
debug/org.eclipse.cdt.debug.application.doc/images/c_symbols.png
Normal file
After Width: | Height: | Size: 44 KiB |
After Width: | Height: | Size: 28 KiB |
After Width: | Height: | Size: 9 KiB |
After Width: | Height: | Size: 26 KiB |
After Width: | Height: | Size: 469 B |
After Width: | Height: | Size: 5.2 KiB |
After Width: | Height: | Size: 20 KiB |
After Width: | Height: | Size: 17 KiB |
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 32 KiB |
After Width: | Height: | Size: 6.5 KiB |
After Width: | Height: | Size: 5.4 KiB |
After Width: | Height: | Size: 4.8 KiB |
BIN
debug/org.eclipse.cdt.debug.application.doc/images/cdt_dlg_define_build_var.png
Executable file
After Width: | Height: | Size: 12 KiB |
BIN
debug/org.eclipse.cdt.debug.application.doc/images/cdt_dlg_edit_build_var.png
Executable file
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 121 KiB |
After Width: | Height: | Size: 71 KiB |
After Width: | Height: | Size: 58 KiB |
After Width: | Height: | Size: 37 KiB |
After Width: | Height: | Size: 57 KiB |
After Width: | Height: | Size: 31 KiB |
After Width: | Height: | Size: 32 KiB |
After Width: | Height: | Size: 26 KiB |
After Width: | Height: | Size: 31 KiB |
After Width: | Height: | Size: 43 KiB |
BIN
debug/org.eclipse.cdt.debug.application.doc/images/cdt_inline_rename.png
Executable file
After Width: | Height: | Size: 10 KiB |
BIN
debug/org.eclipse.cdt.debug.application.doc/images/cdt_menu_toggle_comments.png
Executable file
After Width: | Height: | Size: 4.2 KiB |
After Width: | Height: | Size: 19 KiB |
After Width: | Height: | Size: 19 KiB |
After Width: | Height: | Size: 27 KiB |
After Width: | Height: | Size: 45 KiB |
After Width: | Height: | Size: 108 KiB |
After Width: | Height: | Size: 35 KiB |
After Width: | Height: | Size: 44 KiB |
After Width: | Height: | Size: 34 KiB |
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 41 KiB |
BIN
debug/org.eclipse.cdt.debug.application.doc/images/cdt_pref_build_vars.png
Executable file
After Width: | Height: | Size: 66 KiB |