Thanks for your answer, Greg!

> > To solve this, I put CFLAGS += -msoft-float in
> > vendors/config/armnommu/config.arch.  Then the error changes into:
> 
> This final link line will need a "-msoft-float" as well.
> Otherwise it will try to link against the wrong libgcc.a
> 

Ough... I would not have been asked if it would be _that_ easy ;-)

When I put LDFLAGS += -msoft-float in vendors/config/armnommu/config.arch,
arm-linux-ld complains about unsupported emulation mode when it tries to
link the kernel:

  [ ... ]
  arm-linux-gcc -D__KERNEL__ 
-I/m/l/embedded/uclinux/uClinux-dist-20051014/linux-2.4.32/include  -Wall 
-Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common 
-fno-common -pipe -fno-builtin -D__linux__ -g -DNO_MM -mapcs-32 -march=armv4 
-mtune=arm7tdmi -malignment-traps -msoft-float    -DKBUILD_BASENAME=do_mounts 
-c -o init/do_mounts.o init/do_mounts.c
  In file included from init/do_mounts.c:18:
  
/m/l/embedded/uclinux/uClinux-dist-20051014/linux-2.4.32/include/linux/cramfs_fs.h:120:2:
 warning: #warning "__BYTE_ORDER == __LITTLE_ENDIAN"
  make[3]: Entering directory 
`/m/l/embedded/uclinux/uClinux-dist-20051014/linux-2.4.32/arch/armnommu/tools'
  make[3]: Für das Ziel »all« ist nichts zu tun.
  make[3]: Leaving directory 
`/m/l/embedded/uclinux/uClinux-dist-20051014/linux-2.4.32/arch/armnommu/tools'
  make CFLAGS="-D__KERNEL__ 
-I/m/l/embedded/uclinux/uClinux-dist-20051014/linux-2.4.32/include  -Wall 
-Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common 
-fno-common -pipe -fno-builtin -D__linux__ -g -DNO_MM -mapcs-32 -march=armv4 
-mtune=arm7tdmi -malignment-traps -msoft-float  " -C  kernel
  make[3]: Entering directory 
`/m/l/embedded/uclinux/uClinux-dist-20051014/linux-2.4.32/kernel'
  make all_targets
  make[4]: Entering directory 
`/m/l/embedded/uclinux/uClinux-dist-20051014/linux-2.4.32/kernel'
  rm -f kernel.o
  arm-linux-ld -msoft-float   -r -o kernel.o sched.o fork.o exec_domain.o 
panic.o printk.o module.o exit.o itimer.o info.o time.o softirq.o resource.o 
sysctl.o acct.o capability.o ptrace.o timer.o user.o signal.o sys.o kmod.o 
context.o uid16.o ksyms.o
  /usr/local/bin/arm-linux-ld.real: unrecognised emulation mode: soft-float
  Supported emulations: armelf_linux armelf
  [ ... ]

Can you give me a hint where to put the option to cause the final link
to use the proper libgcc?
_______________________________________________
uClinux-dev mailing list
[email protected]
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by [email protected]
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

Reply via email to