Embedded Linux Development with Eclipse

Download Report

Transcript Embedded Linux Development with Eclipse

Embedded Linux Development with Eclipse

JT Thomas, MontaVista Software

Agenda

•

Eclipse History and Overview

•

Key Eclipse Projects for embedded

•

Step-by-Step to build, deploy, and debug

•

Working examples using DevRocket

•

Future Eclipse Projects for embedded

•

Questions & Answers

Eclipse History and Overview

• •

Donated by IBM to open source community in NOV 2001 An open development platform … and a community

• • Multi platform GUI “for anything and nothing in particular” Java plug-in architecture • •

Governed by Eclipse Public License (EPL) Initially implemented as a Java integrated development environment (JDT)

• •

Eclipse foundation formed in JAN 2004 Many language and software development focused plug-ins and environments

•

Major sub-projects coordinated releases every June

Eclipse has grown up!

Key Eclipse Projects for embedded

•

CDT – C/C++ Development Toolkit

• • • • • C/C++ source code editor and indexer Syntax highlighting and object browsing Build management Binary parsing Native support for GCC/GDB •

RSE – Remote Systems Explorer

• • • • • Consistent interface across multiple targets Many connection mechanisms Filesystem management Process management Shell (and terminal) access

Installing and Updating Eclipse

• •

eclipse.org/downloads Updating and finding plug-ins

Step 1: Setting up a Target

• • • • • •

Install RSE plugin Setup SSH server on target Open Remote Systems Explorer Perspective Create “SSH Only” RSE connection Open integrated shell on target Perform file management tasks on target

Step 2: Building an application

• • •

Open C/C++ Perspective Create new Managed Make C++ project Open build setting and preface compiler command line name with architecture name

• i.e. armv6_gcc •

Build application

Step 3: Deploying an application

•

Open RSE perspective

•

Drag-and-drop binary from Local system to target

•

Open integrated remote shell

•

Run application from shell

Step 4: Debugging an application

• • • • • • •

Setup launch configuration (Run | Run) Select target connection (exported by RSE) Login to target through shell Start gdbserver on target Specify gdb remote connection and port in .gdbinit

Open Debug Perspective Debug application

Working Examples

• • •

MontaVista DevRocket 5.0

Edit-Compile-Debug automation Application Analysis

• • • Memory Usage Analysis Memory Leak Detection Performance Profiling •

System Analysis

• • Performance Profiling Trace Visualization •

Filesystem Creation

Future (interesting) Initiatives

•

DSDP – Device Software Development Project

• Umbrella project focused on improving embedded development •

RTSC – Realtime System Components

• TI led project to support DSPs and 16-bit microcontrollers •

TCF - Target Communications Framework

• • One “protocol to rule them all” Debugging, monitoring, analysis, and test tools •

DD - Device Debugging

• Extensible Debugger Services Framework for better integration

Summary

•

Eclipse is quickly becoming the de-facto standard for embedded Linux Integrated Development Environments

•

CDT is mature enough (now) to support cross compilation and debugging – and to handle larger projects

•

RSE makes target management easy

•

Embedded focused features and integration is improving all the time

•

It’s time to give it a try!

Questions and Answers

• •

Anyone?

Bueller?