This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Re: Multiple Target Failures for Multiple Definition of debug_printf
- From: Gary Benson <gbenson at redhat dot com>
- To: Joel Sherrill <joel dot sherrill at oarcorp dot com>
- Cc: "gdb at sourceware dot org" <gdb at sourceware dot org>
- Date: Wed, 27 Aug 2014 09:48:49 +0100
- Subject: Re: Multiple Target Failures for Multiple Definition of debug_printf
- Authentication-results: sourceware.org; auth=none
- References: <53F60937 dot 2030404 at oarcorp dot com> <53F614F3 dot 9070307 at oarcorp dot com>
Hi Joel,
Sorry for the slow reply, I was on vacation.
There is another thread about this, with a patch. I'll copy you in
on it.
Cheers,
Gary
Joel Sherrill wrote:
> I hate to follow up to myself but the references to debug_printf()
> in sim/ were the prototype, body, and multiple ChangeLog entries.
>
> I if 0'ed the sim/ debug_printf() out and bfin now links.
>
> Can someone else confirm that the debug_printf() under sim/
> is unused and can be deleted?
>
> Thanks.
>
> --joel
>
> On 8/21/2014 9:59 AM, Joel Sherrill wrote:
> > Hi
> >
> > I reported this earlier but wanted to provide some more details.
> >
> > Multiple architectures fail when linking gdb due to debug_printf()
> > being multiply defined.
> >
> > The architectures are: bfin, h8300, lm32, mips, moxie, and v850.
> >
> > The debug_printf() in gdb/common/common-debug.c is very
> > simple. But the one in sim/common/sim-trace.c is more
> > complicated and has awareness of the simulator state.
> > Thus they can't be folded into one method.
> >
> > There are 7 calls to debug_printf() in the sim/ tree but 203
> > in the gdb/ tree.
> >
> > This all leads me to believe that the solution is to change
> > the name of the debug_printf() in sim/ to something like
> > sim_debug_printf().
> >
> > Thoughts?
> >
>
> --
> Joel Sherrill, Ph.D. Director of Research & Development
> joel.sherrill@OARcorp.com On-Line Applications Research
> Ask me about RTEMS: a free RTOS Huntsville AL 35805
> Support Available (256) 722-9985