Re: gdb-7.12 powerpc-rtems4.12-gdb does not build on FreeBSD.

John Baldwin <[email protected]>
Newsgroups gmane.comp.gdb.devel
Message-ID <[email protected]>
On Thursday, November 24, 2016 10:16:10 AM Chris Johns wrote:
> On 23/11/2016 10:38, Chris Johns wrote:
> > Hi,
> >
> > I am getting:
> >
> > ../sim/ppc/libsim.a(sim_calls.o): In function `sim_io_printf_filtered':
> > ../../../gdb-7.12/sim/ppc/sim_calls.c:(.text+0x17c): undefined reference
> > to `error'
> > ../sim/ppc/libsim.a(sim_calls.o): In function `sim_load':
> > ../../../gdb-7.12/sim/ppc/sim_calls.c:(.text+0x291): undefined reference
> > to `error'
> > ../../../gdb-7.12/sim/ppc/sim_calls.c:(.text+0x31d): undefined reference
> > to `error'
> > ../../../gdb-7.12/sim/ppc/sim_calls.c:(.text+0x357): undefined reference
> > to `error'
> > ../sim/ppc/libsim.a(sim_calls.o): In function `sim_create_inferior':
> > ../../../gdb-7.12/sim/ppc/sim_calls.c:(.text+0x53e): undefined reference
> > to `error'
> >
> > and errors.o has the following symbols:
> >
> >   nm
> > build/powerpc-rtems4.12-gdb-7.12-x86_64-freebsd10.3-1/build/gdb/errors.o
> > 0000000000000120 T _Z14internal_errorPKciS0_z
> >                   U _Z15internal_verrorPKciS0_P13__va_list_tag
> > 00000000000001a0 T _Z16internal_warningPKciS0_z
> >                   U _Z17internal_vwarningPKciS0_P13__va_list_tag
> > 0000000000000090 T _Z5errorPKcz
> >                   U _Z6verrorPKcP13__va_list_tag
> > 0000000000000000 T _Z7warningPKcz
> >                   U _Z8vwarningPKcP13__va_list_tag
> >
> > Is there a C++/C thing happening here between the PCC simulator and GDB?
> >
> 
> A follow up. It looks like GDB is being built by cc which is clang on 
> FreeBSD. I am told by Joel this gdb target builds on Linux.
> 
> I do not know what the extern binding is for gdb, C or C++?

clang vs gcc shouldn't really break this.  What undefined symbols do you see
in the nm of sim_calls.o?

Looking at sim/ppc/Makefile.in, it only references CC, not CXX, so I would not
be surprised if it compiles as C without mangled symbols giving the error you
have.  I think 7.12 can still be built as C, though you might need to use a
configure flag to do so?  If you see non-mangled symbols from sim_calls.o, I
would try building 7.12 as plain C to see if that fixes it for now.

-- 
John Baldwin
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.