The Yocto Project Eclipse plug-in: An Effective IDE Environment for Embedded Application and System Developers



Similar documents
Developing applications on Yocto. Lianhao Lu Intel Corporation Feb. 29th, 2012

Yocto Project ADT, Eclipse plug-in and Developer Tools

Yocto Project Eclipse plug-in and Developer Tools Hands-on Lab

Developing Embedded Linux Devices Using the Yocto Project

IOTIVITY AND EMBEDDED LINUX SUPPORT. Kishen Maloor Intel Open Source Technology Center

Intel Integrated Native Developer Experience (INDE): IDE Integration for Android*

Developing Embedded Linux Devices Using the Yocto Project

Eddy Integrated Development Environment, LemonIDE for Embedded Software System Development

Using Intel C++ Compiler in Eclipse* for Embedded Linux* targets

Andreas Burghart 6 October 2014 v1.0

Embedded Linux development training 4 days session

IDE Integration for Android* Part of the Intel Integrated Native Developer Experience (Intel INDE) 1.5.7

PetaLinux SDK User Guide. Application Development Guide

Introducing the IBM Software Development Kit for PowerLinux

Creating a Custom Embedded Linux* OS for Any Embedded Device using the Yocto Project*

The "Eclipse Classic" version is recommended. Otherwise, a Java or RCP version of Eclipse is recommended.

Intel Storage System SSR212CC Enclosure Management Software Installation Guide For Red Hat* Enterprise Linux

Oracle FLEXCUBE Direct Banking Android Tab Client Installation Guide Release

Building Embedded Systems

System Event Log (SEL) Viewer User Guide

Introduction: The Xcode templates are not available in Cordova or above, so we'll use the previous version, for this recipe.

LANDesk White Paper. LANDesk Management Suite for Lenovo Secure Managed Client

Leveraging Rational Team Concert's build capabilities for Continuous Integration

Running a Program on an AVD

Zynq-7000 Platform Software Development Using the ARM DS-5 Toolchain Authors: Simon George and Prushothaman Palanichamy

ClearSpeed Software Developer Kit Installation guide

RAPID EMBEDDED LINUX* DEVELOPMENT

MontaVista Linux 6. Streamlining the Embedded Linux Development Process

Intel Media SDK Library Distribution and Dispatching Process

IBM TRIRIGA Anywhere Version 10 Release 4. Installing a development environment

PLSAP CONNECTOR FOR TALEND USER MANUAL

Using Toaster in a Production Environment

Intel System Event Log (SEL) Viewer Utility

ALTIRIS Notification Connector Configuration Guide

Linux Foundation Automotive Summit - Yokohama, Japan

Dell Spotlight on Active Directory Server Health Wizard Configuration Guide

Installation Guide for the Intel Server Control

Università Degli Studi di Parma. Distributed Systems Group. Android Development. Lecture 1 Android SDK & Development Environment. Marco Picone

HTML5 Applications Made Easy on Tizen IVI. Brian Jones / Jimmy Huang

Software Evaluation Guide for Autodesk 3ds Max 2009* and Enemy Territory: Quake Wars* Render a 3D character while playing a game

CT Bus Clock Fallback for Linux Operating Systems

System Event Log (SEL) Viewer User Guide

DS-5 ARM. Using the Debugger. Version Copyright ARM. All rights reserved. ARM DUI 0446M (ID120712)

RealShot Manager Compression Server software

Intel HTML5 Development Environment Article Using the App Dev Center

RTX Runtime with Service Pack 2 WES7 DEPLOYMENT GUIDE

Writers: Joanne Hodgins, Omri Bahat, Morgan Oslake, and Matt Hollingsworth

This guide explains how to install an Intel Solid-State Drive (Intel SSD) in a SATA-based desktop or notebook computer.

NVIDIA CUDA GETTING STARTED GUIDE FOR MICROSOFT WINDOWS

Reminders. Lab opens from today. Many students want to use the extra I/O pins on

UM1680 User manual. Getting started with STM32F429 Discovery software development tools. Introduction

Oracle Sales Cloud Configuration, Customization and Integrations

Dell Recovery Manager for Active Directory 8.6. Quick Start Guide

Lab 0 (Setting up your Development Environment) Week 1

System Image Recovery* Training Foils

DeviceAnywhere Automation for Smartphones Setup Guide Windows Mobile

ALTIRIS Software Delivery Solution for Windows 6.1 SP3 Product Guide

Altiris Task Server 6.0 Help

Mobility Manager 9.5. Installation Guide

IBM WEBSPHERE LOAD BALANCING SUPPORT FOR EMC DOCUMENTUM WDK/WEBTOP IN A CLUSTERED ENVIRONMENT

INTEL PARALLEL STUDIO XE EVALUATION GUIDE

UM1790 User manual. Getting started with STM32L053 discovery kit software development tools. Introduction

Identikey Server Getting Started Guide 3.1

Installing and Configuring DB2 10, WebSphere Application Server v8 & Maximo Asset Management

Cloud based Holdfast Electronic Sports Game Platform

UM1727 User manual. Getting started with STM32 Nucleo board software development tools. Introduction

Dell Unified Communications Command Suite - Diagnostics 8.0. Data Recorder User Guide

NVIDIA CUDA GETTING STARTED GUIDE FOR MAC OS X

Windows Firewall Configuration with Group Policy for SyAM System Client Installation

Automating client deployment

Oracle Provides Cost Effective Oracle8 Scalable Technology on Microsoft* Windows NT* for Small and Medium-sized Businesses

2.0. Quick Start Guide

Dell One Identity Cloud Access Manager How to Configure for High Availability

Programming with Android: SDK install and initial setup. Dipartimento di Informatica: Scienza e Ingegneria Università di Bologna

Running Windows 8 on top of Android with KVM. 21 October Zhi Wang, Jun Nakajima, Jack Ren

Directory Integration in LANDesk Management Suite

Intel Data Migration Software

Profiling and Testing with Test and Performance Tools Platform (TPTP)

Cosmic Board for phycore AM335x System on Module and Carrier Board. Application Development User Manual

Command Line Interface User Guide for Intel Server Management Software

TIBCO ActiveMatrix BusinessWorks Plug-in for TIBCO Managed File Transfer Software Installation

Remote Control Tivoli Endpoint Manager - TRC User's Guide

New 11g Features in Oracle Developer Tools for Visual Studio. An Oracle White Paper January 2008

OS Deployment V2.0. User s Guide

Instructions for Recovery BIOS Update

ORACLE MOBILE SUITE. Complete Mobile Development Solution. Cross Device Solution. Shared Services Infrastructure for Mobility

Software License Monitoring

SCADA/HMI MOVICON TRAINING COURSE PROGRAM

IBM VisualAge for Java,Version3.5. Remote Access to Tool API

Intel Retail Client Manager

Overview. Open source toolchains. Buildroot features. Development process

LANDesk Management Suite 8, v8.1 Creating Custom Vulnerabilities

NVIDIA CUDA GETTING STARTED GUIDE FOR MAC OS X

Leveraging the Eclipse TPTP* Agent Infrastructure

Using the Eclipse Data Tools Platform with SQL Anywhere 10. A whitepaper from Sybase ianywhere

NVIDIA Tegra Android Platform Support Pack Getting Started Guide

Programmabilty. Programmability in Microsoft Dynamics AX Microsoft Dynamics AX White Paper

Transcription:

It s not an embedded Linux distribution It creates a custom one for you. The Yocto Project Eclipse plug-in: An Effective IDE Environment for Embedded Application and System Developers Jessica Zhang Intel Corporation Oct. 26, 2011

Agenda Embedded Linux Development What The Yocto Project Offers Embedded Linux Development The Yocto Project Eclipse Plug-in o For System Developers o For Application Developers What's Next? ELCE 2011 Prague 2/27

Embedded Linux Development Flow ELCE 2011 Prague 3/27

Embedded Linux Development System developer - develop the Linux systems for the targeted embedded devices: Build profile customization through package selection Tune the image footprint Create reproducible build with flexibility in customization (for example, target architecture, package format) Build toolchain for application developers Application developer - develop applications running on the targeted embedded devices: Use cross-toolchain Take advantage of sysroot setup Remotely debug application on target (real HW or emulator) Tune performance using profiling/tracing tools A framework that streamlines the development flow is highly desirable ELCE 2011 Prague 4/27

What The Yocto Project Offers Embedded Linux Development It's not an embedded Linux distribution it creates a custom one for you. ELCE 2011 Prague 5/27

What The Yocto Project Offers Embedded Linux Development The build system and meta-data: o o o o Using BitBake - a widely adopted build system by the embedded Linux developers Meta-data consists of recipe and configuration files Easy customization / extension of the core meta-data through layers HOB A graphical user interface for BitBake You don't need to be an expert of BitBake to be able to customize your build and image The Application Development Kit (ADT): o Cross-toolchain for the target device Supports sysroot setup Optimized for autotool-based projects o o Qemu emulator Can be booted through unfs Rootfs is extracted as sysroot Tools for target analysis, profiling and tracing ELCE 2011 Prague 6/27

The Yocto Project Eclipse Plug-in An IDE environment to streamline the development flow: o Wizard o Template Based on open source solutions: o Eclipse communities' CDT, RSE, TCF and LinuxTools projects o BitBake Commander Project Within one IDE, users can fully benefit from Yocto Project offerings: o BitBake (through Hob) o Meta-data o ADT o Qemu o Tracing and profiling tools ELCE 2011 Prague 7/27

The Yocto Project Eclipse Plug-in For the System Developers Without the Plug-in, you must do these steps all from the command-line. 1. Clone the Yocto Project meta-data 2. Edit recipe files using your preferred editor: emacs, vim, 3. Source oe-init-build-env to setup your build directory 4. Edit the conf/local.conf file to configure the Yocto build and then use BitBake to kick off the build - OR - 4. Use Hob to facilitate further build customization, and then run the Yocto build from within Hob ELCE 2011 Prague 8/27

The Yocto Project Eclipse Plug-in For System Developers Step 1: Create Yocto BitBake Commander Project for Yocto Project metadata (Note: Collaborate with other open source plug-ins, e.g. egit) ELCE 2011 Prague 9/27

The Yocto Project Eclipse Plug-in For System Developers Step 2: Customize meta-data recipe files o Navigate the meta-data in the project tree view o Yocto BitBake Recipe Editor with keywords highlighted o New Recipe Wizard allows the user to quickly create new recipe files ELCE 2011 Prague 10/27

The Yocto Project Eclipse Plug-in For System Developers Step 3: Launch Hob o Set up a separate build area for the customized meta-data o Using Hob, further customize and configure your build and image output o Run the build from Hob ELCE 2011 Prague 11/27

The Yocto Project Eclipse Plug-in For System Developer Hob ELCE 2011 Prague 12/27

The Yocto Project Eclipse Plug-in For System Developer Demo ELCE 2011 Prague 13/27

The Yocto Project Eclipse Plug-in For Application Developers Without the Plug-in, you must do these steps all from the command-line. 1. Set up your cross toolchain and sysroot for cross development 2. Create your Makefile or autotool-based project o o Best with autotool-based projects. Just pass host options to configure (e.g../configure host=i686-poky-linux with-libtool-sysroot =/home/jzhang/x86) For other projects, ensure the cross-tools are used, (e.g. CC=i686-poky-linux-gcc and LD=i686-poky-linux-ld in makefile) 3. Compile your project 4. Optionally bring up the Qemu emulator using the command line 5. Deploy your application to the remote target: rcp, scp, rsync, etc. 6. Setup cross debugging against the desired target: Qemu or real hardware o o Start gdbserver on target Run cross-gdb on host side to connect to remote target 7. Perform target analysis tasks like tracing and profiling o Follow each tool s special setup for remote launch or interaction from the host This is a very complex task if doing everything on your own and can dramatically slow down your development cycle. ELCE 2011 Prague 14/27

The Yocto Project Eclipse Plug-in For Application Developer Step 1: Set up your cross-toolchain and sysroot for cross-development Step 2: Set up your Eclipse IDE with the Yocto Project Plug-in installed Step 3: Configure Yocto Project ADT plug-in for IDE ELCE 2011 Prague 15/27

The Yocto Project Eclipse Plug-in For Application Developer Step 4: Pick one of the ADT autotool-based project templates ELCE 2011 Prague 16/27

The Yocto Project Eclipse Plug-in For Application Developer Step 5: Change the project s cross-developmen settings if needed ELCE 2011 Prague 17/27

The Yocto Project Eclipse Plug-in For Application Developer Step 6: Work on your project, configure and compile using crossdevelopment settings ELCE 2011 Prague 18/27

The Yocto Project Eclipse Plug-in For Application Developer Step 7: Use the auto-created Qemu launcher for the target to launch Qemu ELCE 2011 Prague 19/27

The Yocto Project Eclipse Plug-in For Application Developer Step 8: Finish the auto-created remote debug configuration template for the project ELCE 2011 Prague 20/27

The Yocto Project Eclipse Plug-in For Application Developer Step 9: Launch the remote debug session ELCE 2011 Prague 21/27

The Yocto Project Eclipse Plug-in For Application Developer Step 10: Use the tools under the YoctoTools menu. The tools suite contains the following essential tools that provide target analytical capabilities: o PowerTop o LatencyTop o Oprofile o Perf o Lttng-ust o SystemTap ELCE 2011 Prague 22/27

The Yocto Project Eclipse Plug-in For Application Developer Demo ELCE 2011 Prague 23/27

What's Next? Continue to improve the Yocto Project s overall user experience is the main theme of the next release Add new tools: o BSP/Kernel configuration tools Improve existing tools: o BitBake Commander Create recipe wizard extensions Add more features to make it easier for the user to create recipes o Hob: Working on near- and longer-term plans for creating a better infrastructure to support a back-end BitBake server and front-end user interface model Deliver key missing functionality, e.g. packages deselection, precise package information o Tracing and Profiling Tools: Make tools easier to setup Improve tool functionality in the long term ELCE 2011 Prague 24/27

Yocto Project: http://www.yoctoproject.org/ Other Sources ADT manual: http://www.yoctoproject.org/docs/current/adt-manual/adtmanual.html Yocto Project Eclipse Plug-in Video: http://vimeo.com/30557368 Hob Video: http://www.youtube.com/embed/w3ixtdajqh4 ELC 2011 ADT Video: The Yocto project and its application development toolkit (ADT) - The answer to effective embedded application development : http://free-electrons.com/blog/elc-2011-videos/ ELCE 2011 Prague 25/27

Legal Information INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. EXCEPT AS PROVIDED IN INTEL'S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER, AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY RELATING TO SALE AND/OR USE OF INTEL PRODUCTS, INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT, OR OTHER INTELLECTUAL PROPERTY RIGHT. Intel may make changes to specifications, product descriptions, and plans at any time, without notice. All dates provided are subject to change without notice. Intel is a trademark of Intel Corporation in the U.S. and other countries. *Other names and brands may be claimed as the property of others. Copyright 2009, Intel Corporation. All rights are protected. ELCE 2011 Prague 26/27

ELCE 2011 Prague 27/27