The Linux binutils 2.14.90.0.5 is released

H. J. Lu hjl@lucon.org
Wed Jul 23 17:04:00 GMT 2003


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'
> 



More information about the Binutils mailing list