On Wed, 2007-10-31 at 20:43 +0100, Pal Szasz wrote:
> Just a little addition: there is another flag which might be involved:
> 
> -mfloat-abi=softfp
> 

How do I pass those flags to the compiler by using crossedev?

Here's the shell script I am currently using.
I changed it to go with Jason's recommended toolset versions but I am
still getting the same linking errors about floating-point
incompatibilities...

.-.-.-.-.-.-.-

#!/bin/bash

CBUILD="i686-pc-linux-gnu"

CHOST=$CBUILD

CTARGET="arm-softfloat-linux-uclibc"

#export ROOT="/usr/arm-softfloat-linux-uclibc"

PORTAGE_CONFIGROOT="/usr/arm-softfloat-linux-uclibc"

UCLIBC_CPU="ARM920T" USE="-*" crossdev -v --binutils 2.17 --gcc 3.4.6-r2
--kernel 2.6.19-r2 --libc 0.9.28.3 --ex-gdb --target
arm-softfloat-linux-uclibc

.-.-.-.-.-.-.-

Thanks for any help


> Pal Szasz wrote:
> > Hi!
> >
> > Hmm... I think somebody else has to help you...
> > All I know that floating point ninstructions on ARM are a bit tricky.
> > The core doesn't support that, but there is an optional co-processor. 
> > And even if the co-processor is not there, there are two ways to 
> > emulate it in software. Unfortunately the way floating point 
> > operations are handled must be specified at compile time, and must 
> > match in every application/lib... and that's the problem here. I recon 
> > there is a flag, -mfpu=vfp which controll the floating point 
> > instructions. It seems uclibc and gcc was built with different 
> > flags... so probably you have to rebuild one of them....
> > Or maybe you are using the wrong uclibc lib?
> >
> > /Pal Szasz
> >
> > Jean-Claude Gervais wrote:
> >> Thank you, Pal!
> >>
> >>     That did indeed help; by putting an empty file at
> >>
> >> /usr/arm-softfloat-linux-uclibc/usr/include/asm/page.h
> >>
> >> I was able to compile, however, now the link fails.
> >>
> >> I think it might be something to do with my USE flags?
> >>
> >> Anyone know?
> >>
> >> [...]
> >> rm -f libc.a shared_libc.a
> >> objs=`cat obj.*` ; \
> >>          arm-softfloat-linux-uclibc-ar cr libc.a $objs && \
> >>          arm-softfloat-linux-uclibc-ar dN 2 libc.a $objs && \
> >>          arm-softfloat-linux-uclibc-ar dN 2 libc.a $objs
> >> arm-softfloat-linux-uclibc-ar cr libc.a obj.signal
> >> arm-softfloat-linux-uclibc-ar cr libc.a obj.string.generic
> >> arm-softfloat-linux-uclibc-ar cr libc.a obj.string.arm
> >> arm-softfloat-linux-uclibc-ar cr libc.a obj.string
> >> arm-softfloat-linux-uclibc-ar cr libc.a obj.sysdeps.common
> >> arm-softfloat-linux-uclibc-ar cr libc.a obj.sysdeps.arm
> >> cp libc.a shared_libc.a
> >> arm-softfloat-linux-uclibc-ranlib libc.a
> >> arm-softfloat-linux-uclibc-ld -EL -shared --warn-common --warn-once -z
> >> combreloc -z defs -s -z relro  -soname=libc.so.0 -o libuClibc-0.9.28.so
> >> \
> >>                 --whole-archive shared_libc.a \
> >>                 ../libc/misc/internals/interp.o --no-whole-archive \
> >>                 -init
> >> __uClibc_init ../lib/ld-uClibc.so.0 
> >> /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a 
> >> ../lib/ld-uClibc.so.0: warning: multiple common of `__libc_stack_end'
> >> shared_libc.a(__uClibc_main.o): warning: previous common is here
> >> arm-softfloat-linux-uclibc-ld:
> >> ERROR: 
> >> /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_udivsi3.o) 
> >> uses VFP instructions, whereas libuClibc-0.9.28.so does not
> >> arm-softfloat-linux-uclibc-ld: failed to merge target specific data of
> >> file /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_udivsi3.o)
> >> arm-softfloat-linux-uclibc-ld:
[...]
> >>
> >>
> >> On Wed, 2007-10-31 at 19:28 +0100, Pal Szasz wrote:
> >>  
> >>> Hi!
> >>>
> >>> I simply created an empty page.h file :-)
> >>>
> >>> Jean-Claude Gervais wrote:
> >>>    
> >>>> Hello,
> >>>>
> >>>>         I'm getting a compilation error trying to build uClibc on 
> >>>> an x86
> >>>> host for an ARM host using crossdev 0.9.18-r4:
> >>>>
> >>>> UCLIBC_CPU="ARM920T" USE="-*" crossdev -v -S --ex-gdb --target
> >>>> arm-softfloat-linux-uclibc
> >>>>
> >>>> [...]
> >>>>
> >>>> arm-softfloat-linux-uclibc-strip -x -R .note -R .comment brk.o
> >>>> ioperm.c:47:22: error: asm/page.h: No such file or directory
> >>>>
> >>>>
> >>>>  * Host Portage ARCH:     x86
> >>>>  * Target Portage ARCH:   arm
> >>>>  * Target System:         arm-softfloat-linux-uclibc
> >>>>  * Stage:                 4 (C/C++ compiler)
> >>>>
> >>>>  * binutils:              binutils-[stable]
> >>>>  * gcc:                   gcc-[stable]
> >>>>  * headers:               linux-headers-[stable]
> >>>>  * libc:                  uclibc-[stable]
> >>>>  * Extra: gdb:            DO IT
> >>>>
> >>>>  * PORTDIR_OVERLAY:       /usr/local/portage
> >>>>  * PORT_LOGDIR:           /var/log/portage
> >>>>  *
> >>>> PKGDIR:                
> >>>> /usr/portage/packages/cross/arm-softfloat-linux-uclibc
> >>>>  * PORTAGE_TMPDIR:        /var/tmp/cross/arm-softfloat-linux-uclibc
> >>>>   _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  
> >>>> ~  -
> >>>> _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -
> >>>> _  -  ~  - Portage 2.1.3.16 (default-linux/x86/2007.0, gcc-4.1.2, 
> >>>> glibc-2.6.1-r0,
> >>>> 2.6.22-gentoo-r5 i686)
> >>>> =================================================================
> >>>> System uname: 2.6.22-gentoo-r5 i686 Intel(R) Pentium(R) 4 CPU 2.40GHz
> >>>> Timestamp of tree: Tue, 30 Oct 2007 17:00:10 +0000
> >>>> distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 
> >>>> 3632)
> >>>> [enabled]
> >>>> app-shells/bash:     3.2_p17
> >>>> dev-lang/python:     2.4.4-r6
> >>>> dev-python/pycrypto: 2.0.1-r6
> >>>> sys-apps/baselayout: 1.12.9-r2
> >>>> sys-apps/sandbox:    1.2.18.1-r2
> >>>> sys-devel/autoconf:  2.13, 2.61-r1
> >>>> sys-devel/automake:  1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
> >>>> sys-devel/binutils:  2.18-r1
> >>>> sys-devel/gcc-config: 1.3.16
> >>>> sys-devel/libtool:   1.5.24
> >>>> virtual/os-headers:  2.6.22-r2
> >>>>
> >>>> Is there a fix for this?
> >>>> Thank you
> >>>>
> >>>>         
> >>
> >>   
> >
> >
> 

-- 
[EMAIL PROTECTED] mailing list

Reply via email to