Top Banner
Eclipse for remote development Presented by Taye Su
22

Eclipse for remote development Presented by Taye Su.

Dec 27, 2015

Download

Documents

Melvin Price
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Eclipse for remote development Presented by Taye Su.

Eclipse for remote developmentPresented by

Taye Su

Page 2: Eclipse for remote development Presented by Taye Su.

Agenda

• Theory of Operation

• Workflows• Install & Configure• New Project• Build• Edit• SCM• Debug

• Q&A

2

Page 3: Eclipse for remote development Presented by Taye Su.

overview

• Global development (US, India, Singapore, China)

• Large C++ codebase

• Linux OS specific

3

Page 4: Eclipse for remote development Presented by Taye Su.

Theory of operation• Classical Development

4

Page 5: Eclipse for remote development Presented by Taye Su.

Pain points

• Inconsistence dev environment

• SlickEdit Dev has own hooks and hard to share

• X-Client doesn’t work well for remote users

• Error prone - typing errors to code

• Difficult to trace compiling error

• Manual debugging

• difficult to setup

• difficult to step through code with gdb commands

• gdb is too expensive to run on staging machine

5

Page 6: Eclipse for remote development Presented by Taye Su.

Solutions for remote development

6

Page 7: Eclipse for remote development Presented by Taye Su.

Introduction

• PC, Linux and Macintosh versions

• Eclipse enhanced for PayPal developers• Ability to edit/build remotely

• Ability to debug remotely

7

Page 8: Eclipse for remote development Presented by Taye Su.

Theory of operation

• Rsync Project

8

Page 9: Eclipse for remote development Presented by Taye Su.

Theory of operation

Rsync Variants for local editing & indexing• Basic Rsync

• Manual Rsync

• Offline Rsync

9

Page 10: Eclipse for remote development Presented by Taye Su.

Benefits

• Inherited all Eclipse plugin features.

• Graphical remote debugging

• Speediness / responsiveness for remote users

• Consistent development environment

10

Page 11: Eclipse for remote development Presented by Taye Su.

Workflows

11

Page 12: Eclipse for remote development Presented by Taye Su.

Workflows – Remote Debugging

• Remote Debug Wizard makes debugging easy

• Debug Steps:• Build Application With Symbols

• Deploy to playground or stage

• Set Breakpoints

• Run the Debug Wizard

• Types of Applications

• Standalone – launched by gdb

• WAC App – launched by Apache, connects via gdbserver

• Service – attach to running process

12

Page 13: Eclipse for remote development Presented by Taye Su.

Standalone Application Debugging

13

executable

IDE gdblaunches

launches

dev staging

Page 14: Eclipse for remote development Presented by Taye Su.

WEB Application

14

apache

IDE debug.cdbplaces

dev staging

Page 15: Eclipse for remote development Presented by Taye Su.

WEB Application

15

apache

IDE debug.cdbhttp request

webapp

launches

gdbserver

launches

dev staging

Page 16: Eclipse for remote development Presented by Taye Su.

WEB Application

16

apache

webapp

gdbserver

IDE

attaches

dev staging

Page 17: Eclipse for remote development Presented by Taye Su.

WEB Application

17

apache

webapp

gdbserver

gdbIDElaunches

connects

controls

dev staging

Page 18: Eclipse for remote development Presented by Taye Su.

Service/Daemon Debugging

18

asfhelloserv

gdbIDElaunches

attaches

dev staging

Page 19: Eclipse for remote development Presented by Taye Su.

Service/Daemon Debugging

19

asfhelloclient

asfhelloserv

gdbcoronacontrols

controls

messages

dev staging

Page 20: Eclipse for remote development Presented by Taye Su.

Future works

• Open Source

• RSYNC project creation

• Remote debugging

• Import project base on makefile (hello.exe_def)

• Deploy app

Page 21: Eclipse for remote development Presented by Taye Su.
Page 22: Eclipse for remote development Presented by Taye Su.

Evaluate This Session

Sign-in: www.eclipsecon.org

Select session from schedule

Evaluate:

1

2

3