This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: The Linux binutils 2.14.90.0.5 is released
- From: Daniel Jacobowitz <drow at mvista dot com>
- To: "H. J. Lu" <hjl at lucon dot org>
- Cc: David Daney <ddaney at avtrex dot com>, binutils at sources dot redhat dot com
- Date: Wed, 23 Jul 2003 13:06:24 -0400
- Subject: Re: The Linux binutils 2.14.90.0.5 is released
- References: <20030723161815.GA17794@lucon.org> <3F1EBF77.6070009@avtrex.com> <20030723170407.GA18743@lucon.org>
On Wed, Jul 23, 2003 at 10:04:07AM -0700, H. J. Lu wrote:
> binutils 2.14.90.0.5 tries to support multigot. Apparently, it doesn't
> work for gcc. Has anyone tried the current binutils from CVS on gcc
> 3.3 or mainline?
Well, 2.14 worked on mipsel-linux. I believe multigot support worked
as well but my tests were cursory.
>
>
> H.J.
> ---
> On Wed, Jul 23, 2003 at 10:01:43AM -0700, David Daney wrote:
> > H. J. Lu wrote:
> >
> > >This is the beta release of binutils 2.14.90.0.5 for Linux, which is
> > >based on binutils 2003 0722 in CVS on sources.redhat.com plus various
> > >changes. It is purely for Linux.
> > >
> >
> > I am trying to build gcc-3.3 (including java language support) for the
> > mipsisa32el-linux (aka mipsel-linux) target, and during linking of
> > libgcj.so.4.0.0 am getting many got overflow type errors. To work
> > around them I have patched the gcc build to pass -xgot to the assembler
> > when compiling code for libraries where the overflow occurs.
> >
> > It is my understanding that this (2.14.90.0.5) version of binutils has
> > multigot support, which in theory should make -xgot unnecessary. Doing
> > some poking around in the binutils source and running ld under gdb lead
> > me to believe that it is trying to build multiple GOTs, but still I get
> > the errors.
> >
> > Could you shed some light on this for me?
> >
> > Is multigot supposed to work for the mipsel-linux target (which uses the
> > -o32 ABI)?
> >
> > Any help or insight into this issue would be greatly appriciated.
> >
> > David Daney.
> >
> >
> > FYI here are the link errors I am getting:
> >
> > /home/daney/mipsRebuild/mipsel-gcc/gcc/xgcc -shared-libgcc
> > -B/home/daney/mipsRebuild/mipsel-gcc/gcc/ -nostdinc++
> > -L/home/daney/mipsRebuild/mipsel-gcc/mipsisa32el-linux/libstdc++-v3/src
> > -L/home/daney/mipsRebuild/mipsel-gcc/mipsisa32el-linux/libstdc++-v3/src/.libs
> > -B/home/mipsel-linux/mipsisa32el-linux/bin/
> > -B/home/mipsel-linux/mipsisa32el-linux/lib/ -isystem
> > /home/mipsel-linux/mipsisa32el-linux/include -shared -nostdlib
> > /home/mipsel-linux/mipsisa32el-linux/lib/crti.o
> > /home/daney/mipsRebuild/mipsel-gcc/gcc/crtbeginS.o .libs/libgcj.la-2.o
> > -Wl,--whole-archive ../boehm-gc/.libs/libgcjgc_convenience.a
> > ../libffi/.libs/libffi_convenience.a ../zlib/.libs/libzgcj_convenience.a
> > -Wl,--no-whole-archive
> > -L/home/daney/mipsRebuild/mipsel-gcc/mipsisa32el-linux/libstdc++-v3/src
> > -L/home/daney/mipsRebuild/mipsel-gcc/mipsisa32el-linux/libstdc++-v3/src/.libs
> > -L/home/daney/mipsRebuild/mipsel-gcc/mipsisa32el-linux/libjava
> > ../boehm-gc/.libs/libgcjgc_convenience.a
> > ../libffi/.libs/libffi_convenience.a ../zlib/.libs/libzgcj_convenience.a
> > -lpthread -L/home/daney/mipsRebuild/mipsel-gcc/gcc
> > -L/home/mipsel-linux/mipsisa32el-linux/bin
> > -L/home/mipsel-linux/mipsisa32el-linux/lib
> > -L/home/mipsel-linux/lib/gcc-lib/mipsisa32el-linux/3.3
> > -L/home/mipsel-linux/lib/gcc-lib/mipsisa32el-linux/3.3/../../../../mipsisa32el-linux/lib
> > -lgcc_s -lc -lgcc_s /home/daney/mipsRebuild/mipsel-gcc/gcc/crtendS.o
> > /home/mipsel-linux/mipsisa32el-linux/lib/crtn.o -Wl,-soname
> > -Wl,libgcj.so.4 -o .libs/libgcj.so.4.0.0
> > .libs/libgcj.la-2.o(.text+0x158):../../../gcc-3.3/libjava/javax/swing/GrayFilter.java:71:
> > relocation truncated to fit: R_MIPS_CALL16 _Jv_InitClass
> > .libs/libgcj.la-2.o(.text+0x184):../../../gcc-3.3/libjava/javax/swing/GrayFilter.java:72:
> > relocation truncated to fit: R_MIPS_CALL16 _Jv_AllocObjectNoFinalizer
> > .libs/libgcj.la-2.o(.text+0x1c4):../../../gcc-3.3/libjava/javax/swing/GrayFilter.java:72:
> > relocation truncated to fit: R_MIPS_CALL16 _Jv_AllocObjectNoFinalizer
> > .libs/libgcj.la-2.o(.text+0x200):../../../gcc-3.3/libjava/javax/swing/GrayFilter.java:72:
> > relocation truncated to fit: R_MIPS_CALL16
> > java::awt::image::FilteredImageSource::FilteredImageSource[in-charge](java::awt::image::ImageProducer*,
> > java::awt::image::ImageFilter*)
> > .libs/libgcj.la-2.o(.text+0x444):../../../gcc-3.3/libjava/javax/swing/GrayFilter.java:83:
> > relocation truncated to fit: R_MIPS_CALL16 __gedf2@@GCC_3.0
> > .libs/libgcj.la-2.o(.text+0x4b0):../../../gcc-3.3/libjava/javax/swing/GrayFilter.java:84:
> > relocation truncated to fit: R_MIPS_CALL16 __ledf2@@GCC_3.0
> > .libs/libgcj.la-2.o(.text+0x4d8):../../../gcc-3.3/libjava/javax/swing/GrayFilter.java:84:
> > relocation truncated to fit: R_MIPS_CALL16 __nedf2@@GCC_3.0
> > .libs/libgcj.la-2.o(.text+0x538):../../../gcc-3.3/libjava/javax/swing/AbstractAction.java:66:
> > relocation truncated to fit: R_MIPS_GOT16
> > javax::swing::event::SwingPropertyChangeSupport::class$
> > .libs/libgcj.la-2.o(.text+0x548):../../../gcc-3.3/libjava/javax/swing/AbstractAction.java:66:
> > relocation truncated to fit: R_MIPS_CALL16 _Jv_AllocObjectNoFinalizer
> > .libs/libgcj.la-2.o(.text+0x57c):../../../gcc-3.3/libjava/javax/swing/AbstractAction.java:72:
> > relocation truncated to fit: R_MIPS_GOT16 java::util::HashMap::class$
> > .libs/libgcj.la-2.o(.text+0x580):../../../gcc-3.3/libjava/javax/swing/AbstractAction.java:72:
> > additional relocation overflows omitted from the output
> > collect2: ld returned 1 exit status
> > make[1]: *** [libgcj.la] Error 1
> > make[1]: Leaving directory
> > `/home/daney/mipsRebuild/mipsel-gcc/mipsisa32el-linux/libjava'
> >
>
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer