eclipse ide yocto plugin

16
External Use TM Developing Embedded Linux ® Application with Eclipse ® IDE YoctoPlug-in July 2014 Catalin Udma - Freescale Semiconductor, Inc.

Upload: cudma

Post on 13-Jun-2015

1.247 views

Category:

Engineering


12 download

DESCRIPTION

Eclipse IDE Yocto Plugin

TRANSCRIPT

External Use

TM

Developing Embedded Linux ® Application with Eclipse® IDE Yocto™ Plug-in

J u l y 2 0 1 4

Catalin Udma - Freescale Semiconductor, Inc.

TM

External Use 2

Agenda

• Introduction to Yocto • Application Development Toolkit (ADT)• Building Yocto• Eclipse IDE Yocto™ Plug-in

− Overview − Installation− Configuration− Embedded Linux Application Development

• Summary

TM

External Use 3

Introduction to Yocto

• Yocto Project (https://www.yoctoproject.org/ ) Open-source embedded Linux build system “It's not an embedded Linux distribution – it creates a custom one for you” Freescale – Yocto contributor Freescale SDK – Yocto based (Power Architecture® and ARM® technologies)

Yocto provides and integrated build environment• User-friendly framework for creating Linux distribution• Configure the target• Build the toolchain: GCC, GCC-cross egblic, binutils• Build the u-boot, kernel• Build Linux User space applications

TM

External Use 4

Application Development Toolkit (ADT)

• Yocto Project provides ADT tools • Objective: provides a user-friendly way to build and develop

complete software stack• ADT consists of the following:

− Architecture specific cross-toolchain− QEMU− User space tools − Eclipse IDE Yocto Plug-in

• ADT can be used:− Extending an Yocto build directory

• Yocto provides: cross-toolchain, QEMU and User space tools

− Stand alone (using ADT installer script)

TM

External Use 5

ADT - Resources

− Yocto Project resources− ADT Overview

• https://www.yoctoproject.org/tools-resources/projects/application-development-toolkit-adt

− ADT Manual• https://www.yoctoproject.org/docs/current/adt-manual/adt-manual.html

TM

External Use 6

Building Yocto

• Install Freescale Yocto SDK QorIQ-SDK-V1.5• Configure build environment

$ source ./oe-init-build-env

• Build toolchain and root file system. Install toolchain

$ bitbake meta-toolchain

$ bitbake core-image-sato-sdk

$ cd tmp/deploy/sdk && source ./poky-eglibc-*.sh• Gernerate qemu Rootfs

$ runqemu-extract-sdk <rootfs.tar.bz2> <destination>• Yocto build provides:

− Complete distribution for target (linux, user space tools)− Cross-toolchain− QEMU

TM

External Use 7

Eclipse IDE Yocto Plug-in Overview

• Eclipse IDE Yocto plug-in is provided by Yocto Project• Eclipse user friendly environment that enables GUI access to ADT

and Yocto resources− Cross compilation− Development, execution and debug− Advanced Linux tools support (oprofile, perf, lttng)− Linux application development support, including autotools− Integrated QEMU support− Yocto specific configuration (Yocto build directory and metadata parsing)− Support for standalone and Yocto build system support− User friendly interface for creating a new Yocto Project BSP

TM

External Use 8

Eclipse IDE Yocto Plug-in Installation

• Yocto Plugin - http://downloads.yoctoproject.org/releases/eclipse-plugin/1.6/juno/

− Yocto Project ADT Plug-in− Yocto Project Bitbake Commander Plug-in− Yocto Project Documentation plug-in

• Pre-requisites − Luna® - http://download.eclipse.org/releases/luna

Mobile and Device Development• Remote System Explorer User Actions• Target Management Terminal• TCF Remote System Explorer add-in• TCF Target Explorer

TM

External Use 9

Eclipse IDE Yocto Plug-in Configuration

• Preferences: Yocto Project ADT

TM

External Use 10

Embedded Linux Application Development (1)

• Create the project• Start QEMU simulator• Configure debug settings• Debug and other tools (perf)

TM

External Use 11

Embedded Linux Application Development (2)

Create the project• New Project -> C/C++/ C Project

− Yocto Project ADT Autotools− Yocto Project ADT CMake

• Inherit all Yocto configurations− Toolchain− Build flags (-mcpu, -m32…)− sysroot

TM

External Use 12

Embedded Linux Application Development (3)

Launch QEMU• Run->External Tools -> External Tools Configurations

− qemu <ppc603e> executable automatically added by Yocto Plugin− Qemu inherits all the configurations from Yoct (settings, scripts)

TM

External Use 13

Embedded Linux Application Development (4)

Configure Debug Settings• Debug Configurations -> C/C++ Remote Application

− Application elf− Connection to target (qemu) New Connection

• Select TCF protocol for connection to target• Set IP address of the qemu• Browse target (qemu) capabilities

− Debugger cross gdb from yocto :

/opt/poky/1.4.1/sysroots/…/powerpc-poky-linux-gdb

TM

External Use 14

Embedded Linux Application Development (5)

Debug and other tools• gdb based debug• Debug application on qemu• Enable other tools

− Perf− Oprofile− Lttng− System Tap

• Root console for running

other tools (perf)

TM

External Use 15

Summary

• Eclipse IDE Yocto Plug-in provides an user friendly environment that enables GUI access to ADT and Yocto resources

• Capabilities:− Linux application development (build, run, debug)− Integrated Qemu based on Yocto settings− Target Linux tools (perf, system tap, lttng)− Yocto project configuration New build Yocto HOB