Gentoo Archives: gentoo-embedded

From: Tim Dodge <timmy@××××××××××.org>
To: gentoo-embedded@l.g.o
Subject: Re: [gentoo-embedded] arm-xscale-linux-uclibc and soft-float
Date: Sun, 24 Apr 2005 18:43:16
Message-Id: 426BE855.80207@invisibles.org
In Reply to: [gentoo-embedded] arm-xscale-linux-uclibc and soft-float by Tim Dodge
1 Tim Dodge wrote:
2 > Hi,
3 >
4 > I'm attempting to build an arm-xscale-linux-uclibc toolchain that uses
5 > soft-float, so that I can build a version of gentoo for my zaurus c860.
6 >
7 > Without soft-float, everything seems to be okay - I've managed to build
8 > a 2.6 kernel that boots into a minimal root fs.
9 >
10 > I have managed to build a soft-float version of the toolchain, but now
11 > nothing will link, I'm getting undefined references to the float
12 > functions like so:
13 >
14 > configure:1644: checking for C compiler default output
15 > configure:1647: arm-xscale-linux-uclibc-gcc -Os -pipe
16 > -march=armv5te -mtune=xscale conftest.c >&5
17 >
18 > /usr/lib/gcc/arm-xscale-linux-uclibc/3.4.3-20050110/../../../../arm-xscale-linux-uclibc/lib/libc.so:
19 > undefined reference to `__eqdf2'
20 > /usr/lib/gcc/arm-xscale-linux-uclibc/3.4.3-20050110/../../../../arm-xscale-linux-uclibc/lib/libc.so:
21 > undefined reference to `__floatsidf'
22 > /usr/lib/gcc/arm-xscale-linux-uclibc/3.4.3-20050110/../../../../arm-xscale-linux-uclibc/lib/libc.so:
23 > undefined reference to `__ltdf2'
24 > /usr/lib/gcc/arm-xscale-linux-uclibc/3.4.3-20050110/../../../../arm-xscale-linux-uclibc/lib/libc.so:
25 > undefined reference to `__extendsfdf2'
26 > /usr/lib/gcc/arm-xscale-linux-uclibc/3.4.3-20050110/../../../../arm-xscale-linux-uclibc/lib/libc.so:
27 > undefined reference to `__adddf3'
28 > /usr/lib/gcc/arm-xscale-linux-uclibc/3.4.3-20050110/../../../../arm-xscale-linux-uclibc/lib/libc.so:
29 > undefined reference to `__fixdfsi'
30 > /usr/lib/gcc/arm-xscale-linux-uclibc/3.4.3-20050110/../../../../arm-xscale-linux-uclibc/lib/libc.so:
31 > undefined reference to `__divdf3'
32 > /usr/lib/gcc/arm-xscale-linux-uclibc/3.4.3-20050110/../../../../arm-xscale-linux-uclibc/lib/libc.so:
33 > undefined reference to `__muldf3'
34 > /usr/lib/gcc/arm-xscale-linux-uclibc/3.4.3-20050110/../../../../arm-xscale-linux-uclibc/lib/libc.so:
35 > undefined reference to `__truncdfsf2'
36 > /usr/lib/gcc/arm-xscale-linux-uclibc/3.4.3-20050110/../../../../arm-xscale-linux-uclibc/lib/libc.so:
37 > undefined reference to `__nedf2'
38 > /usr/lib/gcc/arm-xscale-linux-uclibc/3.4.3-20050110/../../../../arm-xscale-linux-uclibc/lib/libc.so:
39 > undefined reference to `__gedf2'
40 > /usr/lib/gcc/arm-xscale-linux-uclibc/3.4.3-20050110/../../../../arm-xscale-linux-uclibc/lib/libc.so:
41 > undefined reference to `__subdf3'
42 > collect2: ld returned 1 exit status
43 >
44 > I'm using gcc-3.4.3.20050110-r2.ebuild and uclibc-0.9.27.ebuild.
45 >
46 > I was under the impression that the soft-float routines had been added
47 > to gcc since v3.4, and that libfloat is no longer required.
48 >
49 > Any idea what I'm doing wrong?
50 >
51 > Cheers,
52 > Tim
53
54 I've managed to successfully build the soft-float toolchain using these
55 two patches from openembedded.
56
57 I needed to alter the uclibc ebuild to also unset HAS_FPU, and build gcc
58 using EXTRA_ECONF="--with-float=soft".
59
60 Cheers,
61 Tim

Attachments

File name MIME type
gcc-3.4.0-arm-lib1asm.patch text/plain
gcc-3.4.0-arm-nolibfloat.patch text/plain