Re: GDB cvs won't build on AIX 4.1

Peter.Schauer
2002-02-04T20:59:28Z

-mminimal-toc is only available with gcc, so we might loose again, if someone
tries to build GDB with the native compiler. It might be worthwile to add
-mminimal-toc if we are using gcc though, for performance reasons.

I have not been suggesting to revert the patch, but I was thinking along the
lines of (completely untested):

# Do this only for native AIX builds

# The GNU linker does not understand the -bbigtoc switch, which the
# native linker needs.
hold_ldflags=$LDFLAGS
AC_MSG_CHECKING(for the ld -bbigtoc flag)
LDFLAGS="${LDFLAGS} -Wl,-bbigtoc"
AC_TRY_LINK(, [int i;], nativeld=yes, nativeld=no)
LDFLAGS=$hold_ldflags
AC_MSG_RESULT($nativeld)
if test $nativeld = yes; then
CONFIG_LDFLAGS="${CONFIG_LDFLAGS} -Wl,-bbigtoc"
fi

in gdb/configure.in, adapted from a similar Solaris test, which should work
for all compiler/linker combinations.

> Andrew Cagney writes:
> > > On Feb 4, 2002, Andrew Cagney <ac131313@cygnus.com> wrote:
> > >
> > >
> > >>> Perhaps we should hard-code the link option -bbigtoc for gdb to
> > >>> link properly on AIX?
> > >
> > >
> > >> That was the problem. See gdb/294.
> > >> http://sources.redhat.com/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gdb&pr=294
> > >
> > >
> > > Thanks for the pointer. Would it be pointless then to post a patch
> > > that detected which version of GCC is in use, and whether the linker
> > > it uses accepts -bbigtoc?
> >
> >
> > The oposite! See Peter Schauer's comment - it would solve the problem.
> >
> > Andrew
>
> Sorry for the late reply, but there is another way to solve that
> problem which is to compile gdb passing the -mminimal-toc option to
> gcc. This should be uniformly OK independently of the linker used.
>
> There are also these options available, but I haven't tried them.
>
> -mfull-toc
> -mno-fp-in-toc
> -mno-sum-in-toc
>
>
> FWIW, using the GNU linker and reverting that patch I get this
> error: ../../powerpc-ibm-aix4.3.3.0/bin/ld: invalid BFD target
> `bigtoc'collect2: ld returned 1 exit status
>
> Elena

--
Peter Schauer pes@regent.e-technik.tu-muenchen.de