Extending Eclipse CDT for Remote Target Debugging Thomas Fletcher Director, Automotive Engineering Services QNX Software Systems.

Slides:



Advertisements
Similar presentations
Using T4Eclipse tool to Analyze Eclipse UI For t4eclipse version Ben Xu July 17,2010.
Advertisements

17 Copyright © 2005, Oracle. All rights reserved. Deploying Applications by Using Java Web Start.
©2011 Quest Software, Inc. All rights reserved.. Andrei Polevoi, Tatiana Golubovich Program Management Group ActiveRoles Add-on Manager Overview.
©2004 BLACKBOARD, INC. ALL RIGHTS RESERVED. Java Integrated Development Environments Heather Natour Senior Lead Engineer Blackboard Inc. July 18 th 10:15am.
TPF/Eclipse: A New TPF Application Test Tool for the Eclipse and WebSphere ® Environments Presenter: Thiru Thirupuvanam TPF Users Group May 2003 New Orleans,
UBI >> Contents Chapter 2 Software Development Tools Code Composer Essentials v3: Overview Texas Instruments Incorporated University of Beira Interior.
DEV-2: Getting Started with OpenEdge® Architect – Part I
Developing an Eclipse Plug-in David Gallardo. Platform Runtime Workspace Help Team Workbench JFace SWT Eclipse Project Java Development Tools (JDT) Their.
® IBM Software Group © 2010 IBM Corporation What’s New in Profiling & Code Coverage RAD V8 April 21, 2011 Kathy Chan
Goals Give you a feeling of what Eclipse is.
Copyright  2005 Symbian Software Ltd. 1 Lars Kurth Technology Architect, Core Toolchain The Template Engine CDT Developer Conference, Oct 2005.
DEV392: Extending SharePoint Products And Technologies Through Web Parts And ASP.NET Clint Covington, Program Manager Data And Developer Services - Office.
Eclipse Architecture Dwight Deugo Nesa Matic
Eclipse Introduction Dwight Deugo Nesa Matic
Presented by IBM developer Works ibm.com/developerworks/ 2006 January – April © 2006 IBM Corporation. Making the most of Creating Eclipse plug-ins.
1 Plug-in Development Environment (PDE) Guide. 2 Introduction to PDE l What is PDE: »a tool designed to help you develop platform plug-ins while working.
This material exempt per Department of Commerce license exception TSU Debugging.
On Platform-Plugin Architecture Take Eclipse as an Example 魏恒峰.
Eclipse IDE. 2 IDE Overview An IDE is an Interactive Development Environment Different IDEs meet different needs BlueJ and DrJava are designed as teaching.
03 Using Eclipse. 2 IDE Overview An IDE is an Interactive Development Environment Different IDEs meet different needs BlueJ and DrJava are designed as.
WebSphere Studio Portal Toolkit Overview April/2003 Reginaldo Barosa.
© 2006 by IBM 1 How to use Eclipse to Build Rich Internet Applications With PHP and AJAX Phil Berkland IBM Software Group Emerging.
Introduction Purpose Objectives Content Learning Time
© 2008 by Ken Ryall; made available under the EPL v1.0 | March 18, 2008 Visual Studio Users & Eclipse Ken Ryall - Nokia.
JWST Integrated Modeling Environment James Webb Space Telescope.
© 2008 Intel Corporation; made available under the EPL v1.0 | February 12, 2008 | Integrating a custom tool-chain in CDT.
Duke University Program Design & Construction Course Application Development Tools Sherry Shavor
TOOLS FOR DESIGN AND DEVELOPMENT ENVIRONMENTS. Case study - ECLIPSE Lecture notes 3.
DEV-2: Making OpenEdge ® Architect Work For You David Lund Product Readiness.
Introduction to Eclipse Plug-in Development. Who am I? Scott Kellicker Java, C++, JNI, Eclipse.
Ontology Engineering and Plugin Development with the NeOn Toolkit Plug-in Development for the NeOn Toolkit June 1st, 2008 Michael Erdmann, Peter Haase,
Developing C/C++ applications with the Eclipse CDT David Gallardo.
Introduction to Eclipse CSC 216 Lecture 3 Ed Gehringer Using (with permission) slides developed by— Dwight Deugo Nesa Matic
Introduction Purpose This training course covers debugging an application on an SH target in the Renesas HEW (High-performance Embedded Workshop) development.
Renesas Electronics America Inc. © 2012 Renesas Electronics America Inc. All rights reserved. e 2 Studio – Getting Started.
CMSC 466 / 666 Yong Rao Feb. 11, 2004 Revised Mar. 15, 2004.
A (very brief) intro to Eclipse Boyana Norris June 4, 2009.
DEV-8: OpenEdge® Architect – Extensibility & Third Party Integration Sunil Belgaonkar Principal Software Engineer Architect Phillip Magnay.
© 2002 IBM Corporation Confidential | Date | Other Information, if necessary PTP 2.1 Release Review October 29, 2008.
© 2002 IBM Corporation Confidential | Date | Other Information, if necessary June, 2011 Made available under the Eclipse Public License v Mobile.
© 2006 DTP PMC; made available under the EPL v1.0 | July 12, 2006 | DTP Enablement Project Creation Review Creation Review: Eclipse Data Tools Platform.
© 2008 by Shawn Spiars; made available under the EPL v1.0 | March 17, 2008 Case Study – Phurnace Software and RCP Shawn Spiars Lead UI Developer Phurnace.
Design of an Integrated Robot Simulator for Learning Applications Brendon Wilson April 15th, 1999.
 Programming - the process of creating computer programs.
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
Plug-in Architectures Presented by Truc Nguyen. What’s a plug-in? “a type of program that tightly integrates with a larger application to add a special.
© 2002 IBM Corporation Transaction Processing Facility TPF Users Group Acapulco May 2004 © 2004 IBM Corporation Pete Nicholls IBM Toronto Lab TPF Toolkit.
Jan Hatje, DESY CSS GSI Feb. 2009: Technology and Interfaces XFEL The European X-Ray Laser Project X-Ray Free-Electron Laser 1 CSS – Control.
A2: Making OpenEdge ® Architect Work For You Susan Houniet Senior Solution Consultant.
New Project Model UI Primary Author: Mikhail Sennikovsky Major contributors: Mikhail Voronin, Oleg Krasilnikov, Leo Treggiari Intel Corporation September,
An EPICS IDE Using Eclipse Kenneth Evans, Jr. Presented at the EPICS Collaboration Meeting June 15, 2006 Argonne National Laboratory, Argonne, IL.
Bogor-Java Environment for Eclipse MSE Presentation III Yong Peng.
Plug-In Architecture Pattern. Problem The functionality of a system needs to be extended after the software is shipped The set of possible post-shipment.
김민수 Cortex-M4 Processor - Getting Started with the GNU Compiler Collection(gcc)
ECLIPSE RICH CLIENT PLATFORM Part 1 Introduction.
DEV-21: Embracing OpenEdge ® Architect Sunil S Belgaonkar Software Architect.
CST 1101 Problem Solving Using Computers
Goals Give you a feeling of what Eclipse is.
ATS Application Programming: Java Programming
A (very brief) intro to Eclipse
COSC-4840 Software Engineering
HP C/C++ Remote developer plug-in for Eclipse
Architecture, Components, Configuration
Eclipse Database Plug-ins
System Concept Simulation for Concurrent Engineering
An Introduction to Eclipse
Dev 11: Embracing OpenEdge® Architect
Presentation transcript:

Extending Eclipse CDT for Remote Target Debugging Thomas Fletcher Director, Automotive Engineering Services QNX Software Systems

2 All content copyright QNX Software Systems Agenda Eclipse overview Eclipse CDT overview Customizing and extending Eclipse CDT Example: Extending the debugger Installing a new debugger Additional considerations Summary... Code Samples?

3 All content copyright QNX Software Systems Eclipse Overview Universal framework for tool integration Allows developers to choose best-of-breed solutions Workspace Eclipse Platform Workbench Help VCM JDT / JFace SWT Platform Runtime New Tool Extension Existing Tool Extension Vendor Tools Tool A Tool B Tool C Tool A Tool B Tool C

4 All content copyright QNX Software Systems Eclipse CDT Overview Project started in 2002 Design goals >Provide framework for C/C++ development using Eclipse >Integrate with existing C/C++ tools (compiler, debug, etc.) >Build extensible and/or replaceable building blocks >Focus on framework design, not specific features >Target wide variety of OEM and VAR users Use in traditional embedded: RTOS/host-target systems Use in deep embedded: soft-cores, FPGA development Use in desktop/self-hosted development environments Others: mainframe, parallel computing, C dialects, etc.

5 All content copyright QNX Software Systems Eclipse CDT Today Steady progress and growing adoption >Variety of commercial products ship CDT (many embedded) >Participation from over 10 companies, 15 project committers >CDT 2.1 available for Eclipse 3.0, December 2004 >CDT 3.0 targeted for Eclipse 3.1, July 2005 Rich baseline of features >C/C++ build management (projects & source wizards) >C/C++ editor and source navigation tools >C/C++ graphical source debugger

6 All content copyright QNX Software Systems Eclipse CDT Today (cont) Works out of the box >Default is a GNU self-hosted environment make for build management GCC compiler (error parsing, command line arguments) Binutils & ELF objects (objdump, nm, addr2line) GDB debugger >Designed as a fully implemented example Replace or enhance as required

7 All content copyright QNX Software Systems Eclipse CDT Framework C/C++ Debug CDT Launch CDT Core CDT Build Platform Runtime Eclipse platform Workbench JFace SWT Workspace Debug C/C++ debug perspective C/C++ centric information Memory, Registers, Libraries Disassembly of source GDB/MI Debugger support Transfer binary to execution state Glue between core and debug Custom UI for driving tools C/C++ code editor Code-completion/Hover help Class browser/Outliner Source indexing & search C/C++ language parser C/C++ AST/DOM model New project creation Internal or External managed Source code Binary object Binary object identification Compilation error parsers Team Search Help Update Projects Editors Wizards Views

8 All content copyright QNX Software Systems Customizing and Extending Eclipse CDT Eclipse CDT can be customized by: >New plugins that use Eclipse extension points Action & view contributions >New plugins that use CDT extension points Editor commands such as hover help Source navigation such as open include >New plugins that use the CDT data/internal framework Class browser and hierarchy views >Replace entire CDT modules with specific behaviour Custom build systems, language parsers New debuggers, launch configurations

9 All content copyright QNX Software Systems Example Integration: Extending the Debugger Eclipse CDT includes GDB debug and launch support >Standard self-hosted GDB and GDB server configurations >Works with most embedded toolchains Your GDB startup customization may be required >May require custom command line options >May not support particular configurations >May require special environment set-up Start a simulator Download code to a target Download additional files to target Start extra external tools

10 All content copyright QNX Software Systems Installing a New Debugger New debugger extension point >org.eclipse.cdt.debug.core.CDebugger Use this extension point to... >Make the CDT framework aware of a new debugger Will show up in the default CDT launch configuration >Qualify the capabilities of this debugger Host platform it is available for Target architectures it is available for Modes of operation for the debugger

11 All content copyright QNX Software Systems Installing a New Debugger (contd) Java class required to implement three methods >Normal launch and debug session (run) >Attach to an existing process (attach) >Post-mortem core file debug (core) createLaunchSession(ILaunchConfiguration config, IFile exe) createAttachSession(ILaunchConfiguration config, IFile exe, int pid) createCoreSession(ILaunchConfiguration config, IFile exe, IPath corefile) >GDB debugger provided As an example for how to implement a debugger As a customizable component for gdb like debuggers

12 All content copyright QNX Software Systems Adding Debugger Controls New debugger UI interface >org.eclipse.cdt.debug.ui.CDebuggerPage Use this extension point to... >Implement custom configurations for your debugger Java class implements AbstractLaunchConfigurationTab >GDB configuration tab provided as reference

13 All content copyright QNX Software Systems What It All Looks Like

14 All content copyright QNX Software Systems Additional Considerations Launch environment customization >Overloading simple command-line options may not be enough >May require a full launch configuration >Use Eclipse launch extension point with CDT UI components

15 All content copyright QNX Software Systems Conclusion Eclipse C/C+ development tool project >Provides a common framework for all C/C++ tools >Easy to extend and to customize for any environment >Perfectly suits the needs of embedded developers >Is fostering a rapidly growing community of developers The Eclipse CDT project allows embedded developers to focus their custom tooling efforts by leveraging a growing industry standard for tools and technology integration.

16 All content copyright QNX Software Systems Q&A Thank you for your time! Questions? Comments?