Eclipse

Thomas Rauscher trauscher at loytec.com
Thu Oct 14 07:30:00 UTC 2004


  

> -----Original Message-----
> From: Steve Holle [mailto:sholle at link-comm.com] 
> Sent: Wednesday, October 13, 2004 4:19 PM
> To: rtems-users at rtems.com
> Subject: Eclipse
> 
> I'm interested in info on using Eclipse with the CDT plugin as a 
> cross-development platform on a W2K system using MinGW and 
> GDB connected to 
> the Eclipse debugger.  This seems like an intriguing 
> configuration.  Just 
> doing research at the moment.
> 

Hi, 

I'm using Eclipse for cross development. Maybe my experiences
can help a little bit. 

For using make, the CYGWIN/MINGW binaries should be in the
PATH variable. This should be all.

Debugging needs some more setup.

NOTE! This is for Eclipse 2, CDT 1.x. 
Remote debugging (e.g. ARM/RDI) seems to be broken in
Eclipse3/CDT 2.0.x, as the debugger dialogs do not allow to select
remote 
platforms! The CDT CVS Head version works again (I think it will
become CDT 2.1).

So there are three options: a) Stick with Eclipse2, b) compile CDT on
your
own or c) download a patched CDT version from www.zylin.com.

Debugging needs some more setup. Following steps must be done
to get Eclipse working with GDB:

1) Cross-Debug Workaround for the GDB/MI interface. (Found
   in the Eclipse news groups.)

   In file plugins/org.eclipse.cdt.debug.mi.core_1.0.0/plugin.xml
   change the lines

   cpu="native"
   into
   cpu="native,mycpu1,mycpu2"
   or 
   cpu="*"

   where mycpu1, mycpu2, ... are the cpu names used by GDB, e.g.
   "arm,i386,..."

2) Write a debugger script .gdbinit that contacts your target and
   loads the symbol table or a program. It should do something like

   target <connect options>
   load <my program name>
   <whatever else is needed to get the board running>

   Of course this script is highly target and application dependent.
   I let my application Makefile generate it automatically.

   The script should also disable the run command, like this
 
   define run
   end
   document run
     Run is disabled for this target
   end

   Then start your debugger
   mytarget-gdb -x .mygdbinit
   and test that you can debug your target this way.

3) Configure an Eclipse Debugging session

   Create a new Debugging Session and name it.
   Change the following tabs:
   Main Tab
 	Select your project
 	Select an application (does not matter because the application
 	  is selected by the .gdbinit script, but Eclipse requires to
 	  set it)
   Debugger
 	Select GDB Debugger or GDB Cygwin Debugger
	GDB Debugger: Set path to mytarget-gdb
 	GDB Command File: Path to .mygdbinit

   Click Apply

4) Start the session
     Power on the target.
     Click "Debug" or select your Configuration from the Bug Icon.
     Eclipse now should start the selected gdb with the selected
debugger
     script. The target should break in main() and you should be able to
     debug now.

5) Pitfalls

   If loading the application to the target takes more than 10 seconds,
   you must change the following settings.

   In dialog Window->Preferences->C/C++->Debug->GDB MI
   Set 'Debugger timeout' to an appropriate value


I hope, this helps.

--
Thomas Rauscher
LOYTEC electronics GmbH
Stolzenthalergasse 24/3
A-1080 Wien
Austria/Europe
trauscher at loytec.com
www.loytec.com
Phone: +43-1-4020805-15
FAX:   +43-1-4020805-99

Networks under control!
LOYTEC and NEC Electronics Join Forces in Building Automation!
 




More information about the users mailing list