The Linux binutils 2.14.90.0.5 is released
Daniel Jacobowitz
drow@mvista.com
Wed Jul 23 17:06:00 GMT 2003
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
More information about the Binutils
mailing list