"relocation truncated to fit" - mipsel problem

David Daney ddaney@avtrex.com
Fri Aug 8 15:48:00 GMT 2003


There are two potential solutions that I know of.

1) supply -Wa,-xgot to the compiler (which then passes -xgot to the 
assembler).  This lets it usd a 32 bit offset in the GOT and will solve 
the problem at the expense of slower and bigger code.

2) Get binutils 2.14 from here: http://sources.redhat.com/binutils/ or 
2.14.90.0.5 (not sure where I got this version from) and try that.  I 
have found that its multigot support works in most cases, but sometimes 
still have to fall back to -Wa,-xgot.

David Daney

Suraj Kumar wrote:

>Hi all,
>
>I have  been trying  to cross-compile a  package under x86  for mipsel
>target.  The  package is  trying  to link  hundreds  of  .o files  and
>eventually I get the following error:
>
>/usr/lib/gcc-lib/mipsel-linux/2.96/crtbeginS.o: In function `__do_global_dtors_aux':
>/usr/lib/gcc-lib/mipsel-linux/2.96/crtbeginS.o(.text+0x40): relocation truncated to fit: R_MIPS_GOT16 __dso_handle
>/root/suraj/openh323//lib/obj_linux_mips_r/h225_1.o: In function `H225_ReleaseCompleteReason::H225_ReleaseCompleteReason(unsigned in
>t, PASN_Object::TagClass)':
>/root/suraj/openh323//lib/obj_linux_mips_r/h225_1.o(.text+0xa0): relocation truncated to fit: R_MIPS_CALL16 PContainer::Destruct(void)
>...
>...
>
>I searched on google and read  some thing from an archive that using a
>higher version  of binutils-mipsel-linux package  solves this problem.
>In   the   10   minutes   of    searching   I   did   I   found   only
>binutils-mipsel-linux-2.13 and NOT binutils-mipsel-linux-2.14. Is this
>packaged for RH9.0? If yes, where can I find it?
>
>Note:  I'm  not  a  native  RH  user  and  I'm  familiar  with  Debian
>only. Please ignore my little / no-knowledge of Redhat / the places to
>find rpms.  I  tried rpmfind.net but couldn't find  RH9'S packages for
>binutils-mipsel-linux there.
>
>Regards,
>
>  -Suraj
>  
>



More information about the Binutils mailing list