Thanks a lot for your answer.
Following some question about your gdb remote stuff.



Alle 02:12, domenica 4 marzo 2007, Michael Eager ha scritto:
> Fabio Giovagnini wrote:
> > Thanks for the answer.
> > I go deeper in my thought so that maybe you can give me more infos about
> > how I have to investagte about gcc/gdb
> >
> > We are developers of embedded software on board designed and build by us;
> > Generally we use 16 bit cisc and 32 bits risc cpu (Renesas h8/h8s; sh 2 /
> > 3 ). We write applications for automotive enviroment mainly.
> > We write the code using c/c++ and we compile using gcc.
> > Because of we do not have much memory (ram and flash) we develop in the
> > following way: each software we write has the same communication protocol
> > running on RS232 or over TCP/IP and we have a simple monitoring progarm
> > able to show the contents of the memory addresses in some format (char,
> > int, long, signed unsigned, strings, ecc).
>
> It sounds like you are recreating the functionality in the gdb remote.
>
> > Generally we declare a global variable, we write a debug value into it
> > and during the run time we read at the right moment the content of such a
> > variable.
> > Good.
> > For avoiding to read by hand .map file produced by ld, I developed a flex
> > / bison simple analizer able to extract from .map file the address of a
> > symbol. So into my tool I load the .map file and I write the name of the
> > variable and I can read the content of it.
> > This way of working becomes very hard if I use struct and union in c and
> > classes in c++; I should know the offeset of each field of the struct so
> > addind it to the base address known from the .map file, for each istance
> > of such a struct I coud write "mysrtuct.myfield" into my tool, and,
> > calculating the rigth address, my protocol could ask the target to
> > read/write the content at that address.
>
> Yes, developing a debugger it quite time-consuming and difficult.  That is
> essentially what you appear to be doing.
>
> > I prefer to avoid -g option because of my memory is never enough; but a
> > good compromise cound be if I could compile the debug infos into sections
> > I could remove after used by gdb for giving me the informations about the
> > offset of each field. Is it possible?
>
> Why is the size of your target memory an issue?  Are you trying to run
> the debugger on the target?

No, I'm debugging on the host. The target as only a very simple read / wrire 
protocol.

>
> In most cross-development environments, the debugger (gdb) runs on
> a host system and only a small portion of code (gdb remote) runs on
> the target.  The size of your target's memory doesn't affect the host.

How big is your gdb remote stuff?

>
> > Where can I read more about to use gdb for embedded development with very
> > poor uControllers?
>
> Try "info gdb" as a start.

-- 
Fabio Giovagnini

Aurion s.r.l.
via degli orti 11,
40050 Funo di Argelato (BO)
Tel. +39.335.8350919
Fax +39.051.8659009

www.aurion-tech.com

account telefono VoIP skype (www.skype.com):
aurion.giovagnini

Reply via email to