From 815d68684eb964cb3675f42bf103b3995dfb9e05 Mon Sep 17 00:00:00 2001 From: Scott Rifenbark Date: Tue, 8 Mar 2016 07:49:48 -0800 Subject: sdk-manual: Added some intro stuff about the SDK (From yocto-docs rev: 6b829c70349f42d902395a586c84fa21b53227e8) Signed-off-by: Scott Rifenbark Signed-off-by: Richard Purdie --- documentation/sdk-manual/sdk-intro.xml | 184 +++++++++++++++++++++++++++++++++ 1 file changed, 184 insertions(+) (limited to 'documentation/sdk-manual/sdk-intro.xml') diff --git a/documentation/sdk-manual/sdk-intro.xml b/documentation/sdk-manual/sdk-intro.xml index ccc71c8cf4..36d946459d 100644 --- a/documentation/sdk-manual/sdk-intro.xml +++ b/documentation/sdk-manual/sdk-intro.xml @@ -44,6 +44,190 @@ the target hardware, and easily integrate an application into the the Yocto Project build system. + + + Going beyond the actual SDK, the SDK development environment consists + of the following: + + An architecture-specific cross-toolchain and + matching sysroots (target and native) all built by the + OpenEmbedded build system. + The toolchain and sysroots are based on a + Metadata + configuration and extensions, + which allows you to cross-develop on the host machine for the + target hardware. + + The Quick EMUlator (QEMU), which lets you simulate + target hardware. + QEMU is not literally part of the SDK. + You must build and include this emulator separately. + However, QEMU plays an important role in the development + process that revolves around use of and SDK. + + The Eclipse IDE Yocto Plug-in. + This plug-in is also available for you if you are an Eclipse + user. + In the same manner as QEMU, the plug-in is not literally part + of the SDK but is rather available for use as part of the + development process. + + Various user-space tools that greatly enhance + your application development experience. + These tools are also separate from the actual SDK but can be + independently obtained and used in the development process. + + + + +
+ The Cross-Development Toolchain + + + The + Cross-Development Toolchain + consists of a cross-compiler, cross-linker, and cross-debugger + that are used to develop user-space applications for targeted + hardware. + This toolchain is created by running a toolchain installer script + or through a + Build Directory + that is based on your Metadata configuration or extension for + your targeted device. + The cross-toolchain works with a matching target sysroot. + +
+ +
+ Sysroots + + + The native and target sysroots contain needed headers and libraries + for generating binaries that run on the target architecture. + The target sysroot is based on the target root filesystem image + that is built by the OpenEmbedded build system and uses the same + Metadata configuration used to build the cross-toolchain. + +
+ +
+ The QEMU Emulator + + + The QEMU emulator allows you to simulate your hardware while + running your application or image. + QEMU is not part of the SDK but is made available a number of ways: + + + If you have cloned the poky Git + repository to create a + Source Directory + and you have sourced the environment setup script, QEMU is + installed and automatically available. + + + If you have downloaded a Yocto Project release and unpacked + it to create a + Source Directory + and you have sourced the environment setup script, QEMU is + installed and automatically available. + + + If you have installed the cross-toolchain tarball and you + have sourced the toolchain's setup environment script, QEMU + is also installed and automatically available. + + + +
+ +
+ Eclipse Yocto Plug-in + + + The Eclipse IDE is a popular development environment and it fully + supports development using the Yocto Project. + When you install and configure the Eclipse Yocto Project Plug-in + into the Eclipse IDE, you maximize your Yocto Project 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, deployment, and + execution of your output into a QEMU emulation session. + You can also perform cross-debugging and profiling. + The environment also supports a suite of tools that allows you to + perform remote profiling, tracing, collection of power data, + collection of latency data, and collection of performance data. + + + + For information about the application development workflow that + uses the Eclipse IDE and for a detailed example of how to install + and configure the Eclipse Yocto Project Plug-in, see the + "Developing Applications Using Eclipse" + section. + +
+ +
+ User-Space Tools + + + User-space tools are available as part of the SDK development + process and can be helpful. + The tools include LatencyTOP, PowerTOP, OProfile, Perf, SystemTap, + and Lttng-ust. + These tools are common development tools for the Linux platform. + + LatencyTOP: LatencyTOP + focuses on latency that causes skips in audio, stutters in + your desktop experience, or situations that overload your + server even when you have plenty of CPU power left. + + PowerTOP: Helps you + determine what software is using the most power. + You can find out more about PowerTOP at + . + OProfile: A system-wide + profiler for Linux systems that is capable of profiling all + running code at low overhead. + You can find out more about OProfile at + . + For examples on how to setup and use this tool, see the + "OProfile" + section in the Yocto Project Profiling and Tracing Manual. + + Perf: Performance counters + for Linux used to keep track of certain types of hardware + and software events. + For more information on these types of counters see + . + For examples on how to setup and use this tool, see the + "perf" + section in the Yocto Project Profiling and Tracing Manual. + + SystemTap: A free software + infrastructure that simplifies information gathering about + a running Linux system. + This information helps you diagnose performance or + functional problems. + SystemTap is not available as a user-space tool through + the Eclipse IDE Yocto Plug-in. + See + for more information on SystemTap. + For examples on how to setup and use this tool, see the + "SystemTap" + section in the Yocto Project Profiling and Tracing Manual. + + Lttng-ust: A User-space + Tracer designed to provide detailed information on + user-space activity. + See for more + information on Lttng-ust. + + + +
-- cgit v1.2.3-54-g00ecf