* [Buildroot] gcc-4.1.2 eabi softfloat toolchain, undefined reference to "raise"
@ 2007-04-26 8:02 Konstantin Kletschke
2007-04-30 12:57 ` Bernhard Fischer
0 siblings, 1 reply; 5+ messages in thread
From: Konstantin Kletschke @ 2007-04-26 8:02 UTC (permalink / raw)
To: buildroot
I have a toolcahin working quite well: gcc-4.1.2 binutils-2.17, generic
arm softfloat supporting EABI. This works with kernel and userspace
well. Only on u-boot it fails at the final stage:
UNDEF_SYM=`arm-linux-objdump -x lib_generic/libgeneric.a board/scb9328/libscb9328.a cpu/arm920t/libarm920t.a cpu/arm920t/imx/libimx.a lib_arm/libarm.a fs/cramfs/libcramfs.a fs/fat/libfat.a fs/fdos/libfdos.a fs/jffs2/libjffs2.a fs/reiserfs/libreiserfs.a fs/ext2/libext2fs.a net/libnet.a disk/libdisk.a rtc/librtc.a dtt/libdtt.a drivers/libdrivers.a drivers/nand/libnand.a drivers/nand_legacy/libnand_legacy.a drivers/sk98lin/libsk98lin.a post/libpost.a post/cpu/libcpu.a common/libcommon.a |sed -n -e 's/.*\(__u_boot_cmd_.*\)/-u\1/p'|sort|uniq`;\
cd /usr/src/u-boot/1.2.0 && arm-linux-ld -Bstatic -T /usr/src/u-boot/1.2.0/board/scb9328/u-boot.lds -Ttext 0x08f00000 $UNDEF_SYM cpu/arm920t/start.o \
--start-group lib_generic/libgeneric.a board/scb9328/libscb9328.a cpu/arm920t/libarm920t.a cpu/arm920t/imx/libimx.a lib_arm/libarm.a fs/cramfs/libcramfs.a fs/fat/libfat.a fs/fdos/libfdos.a fs/jffs2/libjffs2.a fs/reiserfs/libreiserfs.a fs/ext2/libext2fs.a net/libnet.a disk/libdisk.a rtc/librtc.a dtt/libdtt.a drivers/libdrivers.a drivers/nand/libnand.a drivers/nand_legacy/libnand_legacy.a drivers/sk98lin/libsk98lin.a post/libpost.a post/cpu/libcpu.a common/libcommon.a --end-group -L /usr/local/arm/gcc-4.1.2/lib/gcc/arm-linux-uclibcgnueabi/4.1.2 -lgcc \
-Map u-boot.map -o u-boot
/usr/local/arm/gcc-4.1.2/lib/gcc/arm-linux-uclibcgnueabi/4.1.2/libgcc.a(_dvmd_lnx.o): In function `__div0':
/usr/src/br/buildroot-20070206/toolchain_build_arm_nofpu/gcc-4.1.2-20070128/gcc/config/arm/lib1funcs.asm:1000: undefined reference to `raise'
make: *** [u-boot] Error 1
Well, compiling u-boot works fine with another arch (pxa xscale), only my arm9
i.MX arch triggers a bug here. Does somebody have an advise or tip for
me how to fix this?
Kind Regards, Konsti
--
GPG KeyID EF62FCEF
Fingerprint: 13C9 B16B 9844 EC15 CC2E A080 1E69 3FDA EF62 FCEF
^ permalink raw reply [flat|nested] 5+ messages in thread* [Buildroot] gcc-4.1.2 eabi softfloat toolchain, undefined reference to "raise"
2007-04-26 8:02 [Buildroot] gcc-4.1.2 eabi softfloat toolchain, undefined reference to "raise" Konstantin Kletschke
@ 2007-04-30 12:57 ` Bernhard Fischer
2007-05-03 8:35 ` Konstantin Kletschke
0 siblings, 1 reply; 5+ messages in thread
From: Bernhard Fischer @ 2007-04-30 12:57 UTC (permalink / raw)
To: buildroot
On Thu, Apr 26, 2007 at 10:02:59AM +0200, Konstantin Kletschke wrote:
>I have a toolcahin working quite well: gcc-4.1.2 binutils-2.17, generic
>arm softfloat supporting EABI. This works with kernel and userspace
>well. Only on u-boot it fails at the final stage:
>
>UNDEF_SYM=`arm-linux-objdump -x lib_generic/libgeneric.a board/scb9328/libscb9328.a cpu/arm920t/libarm920t.a cpu/arm920t/imx/libimx.a lib_arm/libarm.a fs/cramfs/libcramfs.a fs/fat/libfat.a fs/fdos/libfdos.a fs/jffs2/libjffs2.a fs/reiserfs/libreiserfs.a fs/ext2/libext2fs.a net/libnet.a disk/libdisk.a rtc/librtc.a dtt/libdtt.a drivers/libdrivers.a drivers/nand/libnand.a drivers/nand_legacy/libnand_legacy.a drivers/sk98lin/libsk98lin.a post/libpost.a post/cpu/libcpu.a common/libcommon.a |sed -n -e 's/.*\(__u_boot_cmd_.*\)/-u\1/p'|sort|uniq`;\
> cd /usr/src/u-boot/1.2.0 && arm-linux-ld -Bstatic -T /usr/src/u-boot/1.2.0/board/scb9328/u-boot.lds -Ttext 0x08f00000 $UNDEF_SYM cpu/arm920t/start.o \
> --start-group lib_generic/libgeneric.a board/scb9328/libscb9328.a cpu/arm920t/libarm920t.a cpu/arm920t/imx/libimx.a lib_arm/libarm.a fs/cramfs/libcramfs.a fs/fat/libfat.a fs/fdos/libfdos.a fs/jffs2/libjffs2.a fs/reiserfs/libreiserfs.a fs/ext2/libext2fs.a net/libnet.a disk/libdisk.a rtc/librtc.a dtt/libdtt.a drivers/libdrivers.a drivers/nand/libnand.a drivers/nand_legacy/libnand_legacy.a drivers/sk98lin/libsk98lin.a post/libpost.a post/cpu/libcpu.a common/libcommon.a --end-group -L /usr/local/arm/gcc-4.1.2/lib/gcc/arm-linux-uclibcgnueabi/4.1.2 -lgcc \
> -Map u-boot.map -o u-boot
>/usr/local/arm/gcc-4.1.2/lib/gcc/arm-linux-uclibcgnueabi/4.1.2/libgcc.a(_dvmd_lnx.o): In function `__div0':
>/usr/src/br/buildroot-20070206/toolchain_build_arm_nofpu/gcc-4.1.2-20070128/gcc/config/arm/lib1funcs.asm:1000: undefined reference to `raise'
>make: *** [u-boot] Error 1
This is a known bug with gcc. There is a bugfix (that i don't really
understand and consequently don't know if it is really accurate)
floating around for this one.
If in doubt, please file a PR in http://gcc.gnu.org/bugzilla/ about this bug
and perhaps add a pointer to the patch if this bug is not yet entered in
bugzilla.
TIA,
>
>Well, compiling u-boot works fine with another arch (pxa xscale), only my arm9
>i.MX arch triggers a bug here. Does somebody have an advise or tip for
>me how to fix this?
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] gcc-4.1.2 eabi softfloat toolchain, undefined reference to "raise"
2007-04-30 12:57 ` Bernhard Fischer
@ 2007-05-03 8:35 ` Konstantin Kletschke
2007-05-03 9:57 ` Bernhard Fischer
0 siblings, 1 reply; 5+ messages in thread
From: Konstantin Kletschke @ 2007-05-03 8:35 UTC (permalink / raw)
To: buildroot
Am 2007-04-30 14:57 +0200 schrieb Bernhard Fischer:
> This is a known bug with gcc. There is a bugfix (that i don't really
> understand and consequently don't know if it is really accurate)
> floating around for this one.
Well I searched like mad but I did not find one.
I digged around and added an empty raise() function and my bootloader
compiled after that and the binary runs fine so far. Hmm...
> If in doubt, please file a PR in http://gcc.gnu.org/bugzilla/ about this bug
> and perhaps add a pointer to the patch if this bug is not yet entered in
> bugzilla.
I will enter it.
Regards, Konsti
--
synertronixx GmbH
Dipl.-Ing. (FH) Konstantin Kletschke
Vahrenwalder Str. 7
30165 Hannover
Tel. : 0511 / 3574 - 661
Fax : 0511 / 93 57 - 679
E-mail : kletschke at synertronixx.de
Internet: http://www.synertronixx.de
Vertretungsberechtigte Gesch?ftsf?hrer:
Marc-Oliver Borck, Dr. Matthias Blaschke
Registergericht: Amtsgericht Hannover
Registernummer: HRB 59670
USt-ID: DE 216 559 901
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] gcc-4.1.2 eabi softfloat toolchain, undefined reference to "raise"
2007-05-03 8:35 ` Konstantin Kletschke
@ 2007-05-03 9:57 ` Bernhard Fischer
2007-05-04 7:34 ` Konstantin Kletschke
0 siblings, 1 reply; 5+ messages in thread
From: Bernhard Fischer @ 2007-05-03 9:57 UTC (permalink / raw)
To: buildroot
On Thu, May 03, 2007 at 10:35:52AM +0200, Konstantin Kletschke wrote:
>Am 2007-04-30 14:57 +0200 schrieb Bernhard Fischer:
>
>> This is a known bug with gcc. There is a bugfix (that i don't really
>> understand and consequently don't know if it is really accurate)
>> floating around for this one.
>
>Well I searched like mad but I did not find one.
A quick google for these keywords:
__div0 raise arm softfloat
would have turned up said patch, fwiw.
>I digged around and added an empty raise() function and my bootloader
>compiled after that and the binary runs fine so far. Hmm...
>
>> If in doubt, please file a PR in http://gcc.gnu.org/bugzilla/ about this bug
>> and perhaps add a pointer to the patch if this bug is not yet entered in
>> bugzilla.
>
>I will enter it.
TIA,
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] gcc-4.1.2 eabi softfloat toolchain, undefined reference to "raise"
2007-05-03 9:57 ` Bernhard Fischer
@ 2007-05-04 7:34 ` Konstantin Kletschke
0 siblings, 0 replies; 5+ messages in thread
From: Konstantin Kletschke @ 2007-05-04 7:34 UTC (permalink / raw)
To: buildroot
Am 2007-05-03 11:57 +0200 schrieb Bernhard Fischer:
> A quick google for these keywords:
> __div0 raise arm softfloat
Well, one trace leads to an uClibc-gcc-41-raise-error.patch which yields
into a 404. But as I understand this "fixes" uClibc to compile but does
not change the toolchain itself.
Another trace yields into a discussion suggesting replacing u-boot's
__div(0) by a raise() stub. May be I did something like that with my
very ugly hack.
So did I understand right, that the libgcc calls raise() which is
provided by glibc not uClibc?
How comes only u-boot triggers that? I compiled many other stuff with
this toolchain, kernel and userspace leading into perfect working
binaries.
Kind regards, Konsti
--
synertronixx GmbH
Dipl.-Ing. (FH) Konstantin Kletschke
Vahrenwalder Str. 7
30165 Hannover
Tel. : 0511 / 3574 - 661
Fax : 0511 / 93 57 - 679
E-mail : kletschke at synertronixx.de
Internet: http://www.synertronixx.de
Vertretungsberechtigte Gesch?ftsf?hrer:
Marc-Oliver Borck, Dr. Matthias Blaschke
Registergericht: Amtsgericht Hannover
Registernummer: HRB 59670
USt-ID: DE 216 559 901
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2007-05-04 7:34 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-04-26 8:02 [Buildroot] gcc-4.1.2 eabi softfloat toolchain, undefined reference to "raise" Konstantin Kletschke
2007-04-30 12:57 ` Bernhard Fischer
2007-05-03 8:35 ` Konstantin Kletschke
2007-05-03 9:57 ` Bernhard Fischer
2007-05-04 7:34 ` Konstantin Kletschke
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox