EmbDev.net

Forum: ARM programming with GCC/GNU tools arc-elf32-ld: Error: Overflow detected in relocation value for symbol "__udivsi3".


von Anish Y. (Company: MOSCHIP) (anishkhanna)


Rate this post
useful
not useful
I am directly using the below command for arc cross compilation, it is
giving below error, how can i rectify this error.

anish@MOSDROID:~/arc/arc_basic/arc$ arc-elf32-ld -T u-boot.lds boot.o
serial_pl01x.o hello.o -L
/firma/anish/arc/usr/local/arc/lib/gcc/arc-elf32/3.4.5/libgcc.a -Map
boot.map -o uboot
serial_pl01x.o(.text+0x38): In function `serial_init':
: undefined reference to `__udivsi3'
arc-elf32-ld: Error: Overflow detected in relocation value for symbol
"__udivsi3".
Relocation value should be between 16777215 and -16777216 whereas it is
-1562312800.
Relocation type is:R_ARC_S25W_PCREL
FileName:serial_pl01x.o
Section Name:.text
Offset in Section:56
arc-elf32-ld: final link failed: Bad value

I even tried giving -lgcc, which is giving below error.
anish@MOSDROID:~/arc/arc_basic/arc$ arc-elf32-ld -T u-boot.lds boot.o
serial_pl01x.o hello.o -lgcc -Map boot.map -o uboot
arc-elf32-ld: cannot find -lgcc

Regards,
Anish.

von Johann L. (gjlayde)


Rate this post
useful
not useful
Use foo-gcc as linker driver, not foo-ld directly.

Please log in before posting. Registration is free and takes only a minute.
Existing account
Do you have a Google/GoogleMail account? No registration required!
Log in with Google account
No account? Register here.