documentation/adt-manual/adt-eclipse.xml: general edits and formatting.

(From yocto-docs rev: 31e2643b0c4205b8db0fb7a8082b5f7083a00745)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Scott Rifenbark 2011-08-15 08:31:54 -07:00 committed by Richard Purdie
parent 7946934811
commit cb8f3b1ad7
1 changed files with 129 additions and 105 deletions

View File

@ -7,7 +7,7 @@
The Eclipse IDE is a popular development environment and it fully supports
development using Yocto Project.
When you install and configure the Eclipse Yocto Project Plug-in into
the Eclipse IDE you maximize your Yocto Project design experience.
the Eclipse IDE, you maximize your Yocto Project design experience.
Installing and configuring the Plug-in results in an environment that
has extensions specifically designed to let you more easily develop software.
These extensions allow for cross-compilation and deployment and execution of
@ -40,7 +40,7 @@
<para>
It is recommended that you have the Indigo 3.7 version of the
Eclipse IDE installed on your development system.
If you dont have this version you can find it at
If you dont have this version, you can find it at
<ulink url='http://www.eclipse.org/downloads'></ulink>.
From that site, choose the Eclipse Classic version.
This version contains the Eclipse Platform, the Java Development
@ -66,7 +66,8 @@
This error causes the application to hang.
</para>
<para>
To fix this issue you can use the &dash;&dash;vmargs option when you start
To fix this issue, you can use the <filename>&dash;&dash;vmargs</filename>
option when you start
Eclipse to increase the size of the permanent generation space:
<literallayout class='monospaced'>
eclipse &dash;&dash;vmargs &dash;&dash;XX:PermSize=256M
@ -77,34 +78,37 @@
<section id='installing-required-plug-ins-and-the-eclipse-yocto-plug-in'>
<title>Installing Required Plug-ins and the Eclipse Yocto Plug-in</title>
<para>
Before installing the Yocto Plug-in you need to be sure that the
CDT 8.0, RSE 3.2, and Autotools plug-ins are all installed in the
Before installing the Yocto Plug-in, you need to be sure that the
<filename>CDT 8.0</filename>, <filename>RSE 3.2</filename>, and
<filename>Autotools</filename> plug-ins are all installed in the
following order.
After installing these three plug-ins, you can install the
Eclipse Yocto Plug-in.
<filename>Eclipse Yocto</filename> plug-in.
Use the following URLs for the plug-ins:
<orderedlist>
<listitem><para><emphasis>CDT 8.0</emphasis>
<ulink url='http://download.eclipse.org/tools/cdt/releases/indigo/'></ulink>:
For CDT main features select the checkbox so you get all items.
For CDT optional features expand the selections and check
“C/C++ Remote Launch”.</para></listitem>
For <filename>CDT main features</filename>, select the checkbox so you get all items.
For <filename>CDT optional features</filename> expand the selections and check
<filename>C/C++ Remote Launch</filename>.</para></listitem>
<listitem><para><emphasis>RSE 3.2</emphasis>
<ulink url='http://download.eclipse.org/tm/updates/3.2'></ulink>:
Check the box next to “TM and RSE Main Features” so you select all
Check the box next to <filename>TM and RSE Main Features</filename> so you select all
those items.
Note that all items in the main features depend on 3.2.1 version.
Expand the items under “TM and RSE Uncategorized 3.2.1” and
select the following: “Remote System Explorer End-User Runtime”,
“Remote System Explorer Extended SDK”, “Remote System Explorer User Actions”,
“RSE Core”, “RSE Terminals UI”, and “Target Management Terminal”.</para></listitem>
Expand the items under <filename>TM and RSE Uncategorized 3.2.1</filename> and
select the following: <filename>Remote System Explorer End-User Runtime</filename>,
<filename>Remote System Explorer Extended SDK</filename>,
<filename>Remote System Explorer User Actions</filename>,
<filename>RSE Core</filename>, <filename>RSE Terminals UI</filename>,
and <filename>Target Management Terminal</filename>.</para></listitem>
<listitem><para><emphasis>Autotools</emphasis>
<ulink url='http://download.eclipse.org/technology/linuxtools/update/'></ulink>:
Expand the items under “Linux Tools” and select “Autotools support for
CDT (Incubation)”.</para></listitem>
<listitem><para><emphasis>Yocto Plug-in</emphasis>
<ulink url='http://www.yoctoproject.org/downloads/eclipse-plugin/1.0'></ulink>:
Check the box next to “Development tools &amp; SDKs for Yocto Linux”
Check the box next to <filename>Development tools &amp; SDKs for Yocto Linux</filename>
to select all the items.</para></listitem>
</orderedlist>
</para>
@ -112,9 +116,11 @@
Follow these general steps to install a plug-in:
<orderedlist>
<listitem><para>From within the Eclipse IDE select the
“Install New Software” item from the “Help” menu.</para></listitem>
<listitem><para>Click “Add…” in the “Work with:” area.</para></listitem>
<listitem><para>Enter the URL for the repository and leave the “Name”
<filename>Install New Software</filename> item from the <filename>Help</filename>
menu.</para></listitem>
<listitem><para>Click <filename>Add…</filename> in the
<filename>Work with:</filename> area.</para></listitem>
<listitem><para>Enter the URL for the repository and leave the <filename>Name</filename>
field blank.</para></listitem>
<listitem><para>Check the boxes next to the software you need to
install and then complete the installation.
@ -132,42 +138,46 @@
the Target Options.
These settings are the default settings for all projects.
You do have opportunities to change them later if you choose to when
you configure the project.
See “Configuring the Cross Toolchain” section later in the manual.
you configure the project (see the following section).
</para>
<para>
To start, you need to do the following from within the Eclipse IDE:
<itemizedlist>
<listitem><para>Choose Windows -&gt; Preferences to display
<listitem><para>Choose <filename>Windows -&gt; Preferences</filename> to display
the Preferences Dialog</para></listitem>
<listitem><para>Click “Yocto SDK”</para></listitem>
<listitem><para>Click <filename>Yocto SDK</filename></para></listitem>
</itemizedlist>
</para>
<section id='configuring-the-cross-compiler-options'>
<title>Configuring the Cross-Compiler Options</title>
<para>
Choose between Stand-alone Prebuilt Toolchain and Build System Derived Toolchain for Cross
Choose between <filename>Stand-alone Prebuilt Toolchain</filename>
and <filename>Build System Derived Toolchain</filename> for Cross
Compiler Options.
<itemizedlist>
<listitem><para><emphasis>Stand-alone Prebuilt Toolchain</emphasis> Select this mode
<listitem><para><emphasis><filename>Stand-alone Prebuilt Toolchain</filename></emphasis>
Select this mode
when you are not concerned with building a target image or you do not have
a Yocto Project build tree on your development system.
For example, suppose you are an application developer and do not
need to build a target image.
Instead, you just want to use an architecture-specific toolchain on an
existing kernel and target root filesystem.
When you use Stand-alone Prebuilt Toolchain you are using the toolchain installed
When you use <filename>Stand-alone Prebuilt Toolchain</filename>
you are using the toolchain installed
in the <filename>/opt/poky</filename> directory.</para></listitem>
<listitem><para><emphasis>Build System Derived Toolchain</emphasis> Select this mode
<listitem><para><emphasis><filename>Build System Derived Toolchain</filename></emphasis>
Select this mode
if you are building images for target hardware or your
development environment already has a Yocto Project build tree.
In this case you likely already have a Yocto Project build tree installed on
In this case, you likely already have a Yocto Project build tree on
your system or you (or someone else) will be building one.
When you select Build System Derived Toolchain you are using the toolchain bundled
When you select <filename>Build System Derived Toolchain</filename>
you are using the toolchain bundled
inside the Yocto Project build tree.
If you use this mode you must also supply the Yocto Project build directory
in the Preferences Dialog.</para></listitem>
If you use this mode, you must also supply the Yocto Project build directory
in the <filename>Preferences Dialog</filename>.</para></listitem>
</itemizedlist>
</para>
</section>
@ -179,24 +189,26 @@
target hardware is created on the development system by the ADT Installer.
The QEMU user-space tools, the
NFS boot process and the cross-toolchain all use the sysroot location
regardless of wheather you select (Stand-alone Prebuilt Toolchain or Build System Derived Toolchain).
regardless of whether you select
(<filename>Stand-alone Prebuilt Toolchain</filename> or
<filename>Build System Derived Toolchain</filename>).
</para>
</section>
<section id='selecting-the-target-architecture'>
<title>Selecting the Target Architecture</title>
<para>
Use the pull-down Target Architecture menu and select the
Use the pull-down <filename>Target Architecture</filename> menu and select the
target architecture.
</para>
<para>
The Target Architecture is the type of hardware you are
The target architecture is the type of hardware you are
going to use or emulate.
This pull-down menu should have the supported architectures.
If the architecture you need is not listed in the menu then you
will need to re-visit
<xref linkend='adt-prepare'>
Preparing to Use the Application Development Toolkit (ADT)</xref>
Preparing to Use the Application Development Toolkit (ADT)</xref>
section earlier in this document.
</para>
</section>
@ -207,16 +219,17 @@
You can choose to emulate hardware using the QEMU emulator, or you
can choose to use actual hardware.
<itemizedlist>
<listitem><para><emphasis>External HW</emphasis> Select this option
<listitem><para><emphasis><filename>External HW</filename></emphasis> Select this option
if you will be using actual hardware.</para></listitem>
<listitem><para><emphasis>QEMU</emphasis> Select this option if
<listitem><para><emphasis><filename>QEMU</filename></emphasis> Select this option if
you will be using the QEMU emulator.
If you are using the emulator you also need to locate the Kernel
If you are using the emulator, you also need to locate the kernel
and specify any custom options.</para>
<para>If you select Build System Derived Toolchain the target kernel you built
will be located in the
<para>If you select <filename>Build System Derived Toolchain</filename>,
the target kernel you built will be located in the
Yocto Project build tree in <filename>tmp/deploy/images</filename> directory.
If you select Stand-alone Prebuilt Toolchain the pre-built kernel you downloaded is located
If you select <filename>Stand-alone Prebuilt Toolchain</filename>, the
pre-built kernel you downloaded is located
in the directory you specified when you downloaded the image.</para>
<para>Most custom options are for advanced QEMU users to further
customize their QEMU instance.
@ -238,7 +251,7 @@
</itemizedlist>
</para>
<para>
Click the “OK” button to save your plug-in configurations.
Click the <filename>OK</filename> button to save your plug-in configurations.
</para>
</section>
</section>
@ -251,27 +264,28 @@
This section describes how to create autotools-based projects from within
the Eclipse IDE.
For information on creating projects in a terminal window see
<xref linkend='using-the-command-line'>Using the Command Line</xref>
<xref linkend='using-the-command-line'>Using the Command Line</xref>
section.
</para>
<para>
To create a project based on a Yocto template and then display the source code,
follow these steps:
<orderedlist>
<listitem><para>Select File -> New -> Project.</para></listitem>
<listitem><para>Double click “CC++”.</para></listitem>
<listitem><para>Double click “C Project” to create the project.</para></listitem>
<listitem><para>Double click “Yocto SDK Project”.</para></listitem>
<listitem><para>Select “Hello World ANSI C Autotools Project”.
<listitem><para>Select <filename>File -&gt; New -&gt; Project</filename>.</para></listitem>
<listitem><para>Double click <filename>CC++</filename>.</para></listitem>
<listitem><para>Double click <filename>C Project</filename> to create the project.</para></listitem>
<listitem><para>Double click <filename>Yocto SDK Project</filename>.</para></listitem>
<listitem><para>Select <filename>Hello World ANSI C Autotools Project</filename>.
This is an Autotools-based project based on a Yocto Project template.</para></listitem>
<listitem><para>Put a name in the “Project name:” field.</para></listitem>
<listitem><para>Click “Next”.</para></listitem>
<listitem><para>Add information in the “Author” field.</para></listitem>
<listitem><para>Use “GNU General Public License v2.0” for the License.</para></listitem>
<listitem><para>Click “Finish”.</para></listitem>
<listitem><para>Answer Yes” to the open perspective prompt.</para></listitem>
<listitem><para>Put a name in the <filename>Project name:</filename> field.</para></listitem>
<listitem><para>Click <filename>Next</filename>.</para></listitem>
<listitem><para>Add information in the <filename>Author</filename> field.</para></listitem>
<listitem><para>Use <filename>GNU General Public License v2.0</filename>
for the License.</para></listitem>
<listitem><para>Click <filename>Finish</filename>.</para></listitem>
<listitem><para>Answer <filename>Yes</filename> to the open perspective prompt.</para></listitem>
<listitem><para>In the Project Explorer expand your project.</para></listitem>
<listitem><para>Expand src.</para></listitem>
<listitem><para>Expand <filename>src</filename>.</para></listitem>
<listitem><para>Double click on your source file and the code appears
in the window.
This is the template.</para></listitem>
@ -283,20 +297,23 @@
<title>Configuring the Cross-Toolchains</title>
<para>
The previous section, <xref linkend='configuring-the-cross-compiler-options'>
Configuring the Cross-Compiler Options</xref>, set up the default project
Configuring the Cross-Compiler Options</xref>, set up the default project
configurations.
You can change these settings for a given project by following these steps:
<orderedlist>
<listitem><para>Select Project -> Invoke Yocto Tools -> Reconfigure Yocto.
This brings up the project's Yocto Settings Dialog.
<listitem><para>Select <filename>Project -&gt; Invoke Yocto Tools -&gt; Reconfigure Yocto</filename> -
This selection brings up the project's <filename>Yocto Settings</filename> Dialog.
Settings are inherited from the default project configuration.
The information in this dialogue is identical to that chosen earlier
for the Cross Compiler Option (Stand-alone Prebuilt Toolchain or Build System Derived Toolchain),
the Target Architecture, and the Target Options.
The information in this dialog is identical to that chosen earlier
for the <filename>Cross Compiler Option</filename>
(<filename>Stand-alone Prebuilt Toolchain</filename> or
<filename>Build System Derived Toolchain</filename>),
the <filename>Target Architecture</filename>, and the
<filename>Target Options</filename>.
The settings are inherited from the Yocto Plug-in configuration performed
after installing the plug-in.</para></listitem>
<listitem><para>Select Project -> Reconfigure Project.
This runs the <filename>autogen.sh</filename> in the workspace for your project.
<listitem><para><filename>Select Project -&gt; Reconfigure Project</filename> -
This selection runs the <filename>autogen.sh</filename> in the workspace for your project.
The script runs <filename>libtoolize</filename>, <filename>aclocal</filename>,
<filename>autoconf</filename>, <filename>autoheader</filename>,
<filename>automake &dash;&dash;a</filename>, and
@ -308,7 +325,7 @@
<section id='building-the-project'>
<title>Building the Project</title>
<para>
To build the project, select Project -&gt; Build Project.
To build the project, select <filename>Project -&gt; Build Project</filename>.
The console should update and you can note the cross-compiler you are using.
</para>
</section>
@ -318,19 +335,20 @@
<para>
To start the QEMU emulator from within Eclipse, follow these steps:
<orderedlist>
<listitem><para>Select Run -> External Tools -> External Tools Configurations...
This selection brings up the External Tools Configurations Dialogue.</para></listitem>
<listitem><para>Go to the left navigation area and expand Program.
<listitem><para>Select <filename>Run -&gt; External Tools -&gt; External Tools Configurations...</filename>
- This selection brings up the <filename>External Tools Configurations</filename> Dialog.</para></listitem>
<listitem><para>Go to the left navigation area and expand <filename>Program</filename>.
You should find the image listed.
For example, qemu-x86_64-poky-linux.</para></listitem>
For example, <filename>qemu-x86_64-poky-linux</filename>.</para></listitem>
<listitem><para>Click on the image.
This brings up a new environment in the main area of the External
Tools Configurations Dialogue.
This brings up a new environment in the main area of the
<filename>External Tools Configurations</filename> Dialog.
The Main tab is selected.</para></listitem>
<listitem><para>Click “Run” next.
<listitem><para>Click <filename>Run</filename> next.
This brings up a shell window.</para></listitem>
<listitem><para>Enter your host root password in the shell window at the prompt.
This sets up a Tap 0 connection needed for running in user-space NFS mode.</para></listitem>
This sets up a <filename>Tap 0</filename> connection needed for running in user-space
NFS mode.</para></listitem>
<listitem><para>Wait for QEMU to launch.</para></listitem>
<listitem><para>Once QEMU launches you need to determine the IP Address
for the user-space NFS.
@ -343,30 +361,33 @@
<section id='deploying-and-debugging-the-application'>
<title>Deploying and Debugging the Application</title>
<para>
Once QEMU is running you can deploy your application and use the emulator
Once QEMU is running, you can deploy your application and use the emulator
to perform debugging.
Follow these steps to deploy the application.
<orderedlist>
<listitem><para>Select Run -> Debug Configurations...</para></listitem>
<listitem><para>In the left area expand “C/C++Remote Application”.</para></listitem>
<listitem><para>Select <filename>Run -&gt; Debug Configurations...</filename></para></listitem>
<listitem><para>In the left area expand <filename>C/C++Remote Application</filename>.</para></listitem>
<listitem><para>Locate your project and select it to bring up a new
tabbed view in the Debug Configurations dialogue.</para></listitem>
tabbed view in the <filename>Debug Configurations</filename> Dialog.</para></listitem>
<listitem><para>Enter the absolute path into which you want to deploy
the application.
Use the Remote Absolute File Path for C/C++Application:.
Use the <filename>Remote Absolute File Path</filename> for <filename>C/C++Application:</filename>.
For example, enter <filename>/usr/bin/&lt;programname&gt;</filename>.</para></listitem>
<listitem><para>Click on the Debugger tab to see the cross-tool debugger
<listitem><para>Click on the <filename>Debugger</filename> tab to see the cross-tool debugger
you are using.</para></listitem>
<listitem><para>Create a new connection to the QEMU instance
by clicking on “new”.</para></listitem>
<listitem><para>Select “TCF, which means Target Communication Framework.</para></listitem>
<listitem><para>Click “Next”.</para></listitem>
<listitem><para>Clear out the “host name” field and enter the IP Address
by clicking on <filename>new</filename>.</para></listitem>
<listitem><para>Select <filename>TCF</filename>, which means Target Communication
Framework.</para></listitem>
<listitem><para>Click <filename>Next</filename>.</para></listitem>
<listitem><para>Clear out the <filename>host name</filename> field and enter the IP Address
determined earlier.</para></listitem>
<listitem><para>Click Finish to close the new connections dialogue.</para></listitem>
<listitem><para>Use the drop-down menu now in the “Connection” field and pick
<listitem><para>Click <filename>Finish</filename> to close the new connections
Dialog.</para></listitem>
<listitem><para>Use the drop-down menu now in the <filename>Connection</filename> field and pick
the IP Address you entered.</para></listitem>
<listitem><para>Click “Debug” to bring up a login screen and login.</para></listitem>
<listitem><para>Click <filename>Debug</filename> to bring up a login screen
and login.</para></listitem>
<listitem><para>Accept the debug perspective.</para></listitem>
</orderedlist>
</para>
@ -379,49 +400,52 @@
your development experience.
These tools are aids in developing and debugging applications and images.
You can run these user-space tools from within the Yocto Eclipse
Plug-in through the Window -> YoctoTools menu.
Plug-in through the <filename>Window -&gt; YoctoTools</filename> menu.
</para>
<para>
Once you pick a tool you need to configure it for the remote target.
Once you pick a tool, you need to configure it for the remote target.
Every tool needs to have the connection configured.
You must select an existing TCF-based RSE connection to the remote target.
If one does not exist, click "New" to create one.
If one does not exist, click <filename>New</filename> to create one.
</para>
<para>
Here are some specifics about the remote tools:
<itemizedlist>
<listitem><para><emphasis>OProfile:</emphasis> Selecting this tool causes
the oprofile-server on the remote target to launch on the local host machine.
The oprofile-viewer must be installed on the local host machine and the
oprofile-server must be installed on the remote target, respectively, in order
to use.
<listitem><para><emphasis><filename>OProfile</filename>:</emphasis> Selecting this tool causes
the <filename>oprofile-server</filename> on the remote target to launch on
the local host machine.
The <filename>oprofile-viewer</filename> must be installed on the local host machine and the
<filename>oprofile-server</filename> must be installed on the remote target,
respectively, in order to use.
You can locate both the viewer and server from
<ulink url='http://git.yoctoproject.org/cgit/cgit.cgi/oprofileui/'></ulink>.
You need to compile and install the oprofile-viewer from the source code
You need to compile and install the <filename>oprofile-viewer</filename> from the source code
on your local host machine.
The oprofile-server is installed by default in the image.</para></listitem>
<listitem><para><emphasis>Lttng-ust:</emphasis> Selecting this tool runs
The <filename>oprofile-server</filename> is installed by default in the image.</para></listitem>
<listitem><para><emphasis><filename>Lttng-ust</filename>:</emphasis> Selecting this tool runs
<filename>usttrace</filename> on the remote target, transfers the output data back to the
local host machine and uses <filename>lttv-gui</filename> to graphically display the output.
The <filename>lttv-gui</filename> must be installed on the local host machine to use this tool.
For information on how to use <filename>lttng</filename> to trace an application, see
<ulink url='http://lttng.org/files/ust/manual/ust.html'></ulink>.</para>
<para>For "Application" you must supply the absolute path name of the
application to be traced by user mode lttng.
<para>For <filename>Application</filename>, you must supply the absolute path name of the
application to be traced by user mode <filename>lttng</filename>.
For example, typing <filename>/path/to/foo</filename> triggers
<filename>usttrace /path/to/foo</filename> on the remote target to trace the
program <filename>/path/to/foo</filename>.</para>
<para>"Argument" is passed to <filename>usttrace</filename>
<para><filename>Argument</filename> is passed to <filename>usttrace</filename>
running on the remote target.</para></listitem>
<listitem><para><emphasis>PowerTOP:</emphasis> Selecting this tool runs
"PowerTOP" on the remote target machine and displays the results in a
new view called "powertop".</para>
<para>"Time to gather data(sec):" is the time passed in seconds before data
<listitem><para><emphasis><filename>PowerTOP</filename>:</emphasis> Selecting this tool runs
<filename>powertop</filename> on the remote target machine and displays the results in a
new view called <filename>powertop</filename>.</para>
<para><filename>Time to gather data(sec):</filename> is the time passed in seconds before data
is gathered from the remote target for analysis.</para>
<para>"show pids in wakeups list:" corresponds to the <filename>-p</filename> argument
<para><filename>show pids in wakeups list:</filename> corresponds to the
<filename>-p</filename> argument
passed to <filename>powertop</filename>.</para></listitem>
<listitem><para><emphasis>LatencyTOP and Perf:</emphasis> "LatencyTOP"
identifies system latency, while <filename>perf</filename> monitors the system's
<listitem><para><emphasis><filename>LatencyTOP and Perf</filename>:</emphasis>
<filename>latencytop</filename> identifies system latency, while
<filename>perf</filename> monitors the system's
performance counter registers.
Selecting either of these tools causes an RSE terminal view to appear
from which you can run the tools.