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: "H. J. Lu" <hjl at lucon dot org>
- To: David Daney <ddaney at avtrex dot com>
- Cc: binutils at sources dot redhat dot com
- Date: Wed, 23 Jul 2003 10:04:07 -0700
- Subject: Re: The Linux binutils 2.14.90.0.5 is released
- References: <20030723161815.GA17794@lucon.org> <3F1EBF77.6070009@avtrex.com>
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?
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'
>