Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] ARM softfloat - revisited
@ 2007-09-25 12:02 Ulf Samuelsson
  2007-09-25 14:29 ` vano
  0 siblings, 1 reply; 2+ messages in thread
From: Ulf Samuelsson @ 2007-09-25 12:02 UTC (permalink / raw)
  To: buildroot

When I try to build an ARM toolchain
(gcc-4.2.1/binutils-2.18/uClibc-0-.9.29)
with software floating point, I get the following
error message when building uClibc-0.9.29:

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
libc/libc_so.a(difftime.os): In function `difftime':
difftime.c:(.text+0x8): undefined reference to `__floatsidf'
difftime.c:(.text+0x2c): undefined reference to `__subdf3'
libc/libc_so.a(_fpmaxtostr.os): In function `_fpmaxtostr':
_fpmaxtostr.c:(.text+0xd0): undefined reference to `__nedf2'
_fpmaxtostr.c:(.text+0xf4): undefined reference to `__eqdf2'
_fpmaxtostr.c:(.text+0x110): undefined reference to `__divdf3'
_fpmaxtostr.c:(.text+0x11c): undefined reference to `__ltdf2'
_fpmaxtostr.c:(.text+0x1d0): undefined reference to `__muldf3'
_fpmaxtostr.c:(.text+0x384): undefined reference to `__gedf2'
_fpmaxtostr.c:(.text+0x40c): undefined reference to `__floatunsidf'
libc/libc_so.a(__psfs_do_numeric.os): In function `__psfs_do_numeric':
__psfs_do_numeric.c:(.text+0x534): undefined reference to `__truncdfsf2'
libc/libc_so.a(strtof.os): In function `strtof':
strtof.c:(.text+0x1c): undefined reference to `__extendsfdf2'
libc/libc_so.a(__strtofpmax_l.os): In function `__strtofpmax_l':
__strtofpmax_l.c:(.text+0x15c): undefined reference to `__adddf3'

/home/ulf/projects/Buildroot/20070925-soft/buildroot/build_arm_wchar/staging_dir/usr/lib/gcc/arm-linux-uclibc/4.2.1/libgcc.a(_fixunsdfsi.o): In function `__fixunsdfsi':
libgcc2.c:(.text+0x34): undefined reference to `__fixdfsi'
make[2]: *** [lib/libc.so] Error 1
make[1]: *** [lib/libc.so.0] Error 2
make: ***
[/home/ulf/projects/Buildroot/20070925-soft/buildroot/toolchain_build_arm_nofpu_wchar/uClibc-0.9.29/lib/libc.a] Error 2

---------------------------------------------------------------------------
If I check the STAGING_DIR, I see that 

<buildroot>/build_arm_wchar/staging_dir/usr/lib/gcc/arm-linux-uclibc/4.2.1/libgcc.a
seems to contain the neccessary files, but the linking of libc/libc_so.a
does not seem to take into account this files.
I tried adding LDFLAGS+=-lgcc but this does not help.
The I added the gcc/config/soft-fp source files from gcc-4.2.1
and this allows the compile to continue, but it seems to be strange
that this should be required.

Any ideas?

Best Regards
Ulf Samuelsson

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [Buildroot] ARM softfloat - revisited
  2007-09-25 12:02 [Buildroot] ARM softfloat - revisited Ulf Samuelsson
@ 2007-09-25 14:29 ` vano
  0 siblings, 0 replies; 2+ messages in thread
From: vano @ 2007-09-25 14:29 UTC (permalink / raw)
  To: buildroot

Ulf Samuelsson wrote:
> ---------------------------------------------------------------------------
> If I check the STAGING_DIR, I see that 
> 
> <buildroot>/build_arm_wchar/staging_dir/usr/lib/gcc/arm-linux-uclibc/4.2.1/libgcc.a
> seems to contain the neccessary files, but the linking of libc/libc_so.a
> does not seem to take into account this files.
> I tried adding LDFLAGS+=-lgcc but this does not help.
> The I added the gcc/config/soft-fp source files from gcc-4.2.1
> and this allows the compile to continue, but it seems to be strange
> that this should be required.
> 
> Any ideas?
> 
> Best Regards
> Ulf Samuelsson
> 


Hi Ulf,

I tried softfloat about one week ago but without success.
I tried this patch to 4.2.1 , build goes a bit further but fails too.

diff -urN gcc-3.4.1-old/gcc/config/arm/t-linux
gcc-3.4.1/gcc/config/arm/t-linux
--- gcc-3.4.1-old/gcc/config/arm/t-linux        2003-09-20
16:09:07.000000000 -0500
+++ gcc-3.4.1/gcc/config/arm/t-linux    2004-09-02 21:51:15.000000000 -0500
@@ -4,7 +4,10 @@
 LIBGCC2_DEBUG_CFLAGS = -g0

 LIB1ASMSRC = arm/lib1funcs.asm
-LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx
+LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx \
+       _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi
_fixunsdfsi \
+       _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \
+       _fixsfsi _fixunssfsi

 # MULTILIB_OPTIONS = mhard-float/msoft-float
 # MULTILIB_DIRNAMES = hard-float soft-float


I'll try your proposed approach.

Best regards,
Ivan

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2007-09-25 14:29 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-09-25 12:02 [Buildroot] ARM softfloat - revisited Ulf Samuelsson
2007-09-25 14:29 ` vano

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox