This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
RE: Problem building 5.2 for m68k-elf on Solaris
- From: "Rude, Randy [Cont]" <Randy dot Rude at gdcanada dot com>
- To: 'Andrew Cagney' <ac131313 at ges dot redhat dot com>
- Cc: gdb at sources dot redhat dot com
- Date: Thu, 27 Jun 2002 11:47:33 -0600
- Subject: RE: Problem building 5.2 for m68k-elf on Solaris
> > $ ../gdb-5.2/configure --target=m68k-elf
> >> [snip]
> >>
> >> $ make
> >> [snip]
> >> gcc -c -g -O2 -I/usr/include/v9 -I. -I../../gdb-5.2/gdb
> >> -I../../gdb-5.2/gdb/config -DHAVE_CONFIG_H
> >> -I../../gdb-5.2/gdb/../include/opcode
> >> -I../../gdb-5.2/gdb/../readline/..
> >> -I../bfd -I../../gdb-5.2/gdb/../bfd -I../../gdb-5.2/gdb/../include
> >> -I../intl -I../../gdb-5.2/gdb/../intl -DMI_OUT=1 -DUI_OUT=1
> >> -Wimplicit
> >> -Wreturn-type -Wcomment -Wtrigraphs -Wformat -Wparentheses
> >> -Wpointer-arith
> >> -Wuninitialized ../../gdb-5.2/gdb/ser-unix.c
> >> In file included from /usr/include/netinet/in.h:41,
> >> from /usr/include/sys/socket.h:200,
> >> from ../../gdb-5.2/gdb/ser-unix.c:29:
> >> /usr/include/sys/stream.h:327: redefinition of `struct bcache'
> >> gmake[1]: *** [ser-unix.o] Error 1
> >>
> >> Randy
> >>
> >
> >
> > This is a namespace conflict. The Solaris stream.h defines
> struct bcache
> > which is also defined by GDB in bcache.h; the latter is
> being included
> > unnecessarily in the files ser-unix.c, ser-pipe.c, and ser-tcp.c.
> >
> > I was able to get the m68k-elf target to build by adding:
> >
> > #define BCACHE_H 1
> >
> > at the top of each of these files. Not that I'd submit
> that as a patch ;-)
> > but this allows me to build native Solaris and m68k-elf targets.
> >
> > Hopefully someone more familiar with the code can come up
> with a more
> > elegant solution?
>
> Would you be able to determine/explain exactly how "bcache.h"
> came to be
> included? Looking at ser-*.c, nothing obvious jumped out.
>
bcache.h is:
included from ../../work/gdb/symtab.h:31,
from ../../work/gdb/value.h:270,
from ../../work/gdb/gdbarch.h:41,
from ../../work/gdb/defs.h:1035,
from ../../work/gdb/ser-unix.c:22:
Hope that helps.
Randy