public inbox for gentoo-embedded@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-embedded] asm/page.h: No such file or directory
@ 2007-10-31 18:18 Jean-Claude Gervais
  2007-10-31 18:28 ` Pal Szasz
  0 siblings, 1 reply; 16+ messages in thread
From: Jean-Claude Gervais @ 2007-10-31 18:18 UTC (permalink / raw
  To: Gentoo-Embedded

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

-- 
gentoo-embedded@gentoo.org mailing list



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

* Re: [gentoo-embedded] asm/page.h: No such file or directory
  2007-10-31 18:18 [gentoo-embedded] asm/page.h: No such file or directory Jean-Claude Gervais
@ 2007-10-31 18:28 ` Pal Szasz
  2007-10-31 19:20   ` [gentoo-embedded] asm/page.h: No such file or directory - Link error Jean-Claude Gervais
  0 siblings, 1 reply; 16+ messages in thread
From: Pal Szasz @ 2007-10-31 18:28 UTC (permalink / raw
  To: gentoo-embedded

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
>
>   

-- 
gentoo-embedded@gentoo.org mailing list



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

* Re: [gentoo-embedded] asm/page.h: No such file or directory - Link error
  2007-10-31 18:28 ` Pal Szasz
@ 2007-10-31 19:20   ` Jean-Claude Gervais
  2007-10-31 19:31     ` Jason
                       ` (2 more replies)
  0 siblings, 3 replies; 16+ messages in thread
From: Jean-Claude Gervais @ 2007-10-31 19:20 UTC (permalink / raw
  To: gentoo-embedded

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:
ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_divsi3.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(_divsi3.o)
arm-softfloat-linux-uclibc-ld:
ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_umodsi3.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(_umodsi3.o)
arm-softfloat-linux-uclibc-ld:
ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_modsi3.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(_modsi3.o)
arm-softfloat-linux-uclibc-ld:
ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_dvmd_lnx.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(_dvmd_lnx.o)
arm-softfloat-linux-uclibc-ld:
ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_addsubdf3.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(_addsubdf3.o)
arm-softfloat-linux-uclibc-ld:
ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_muldivdf3.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(_muldivdf3.o)
arm-softfloat-linux-uclibc-ld:
ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_cmpdf2.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(_cmpdf2.o)
arm-softfloat-linux-uclibc-ld:
ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_fixunsdfsi.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(_fixunsdfsi.o)
arm-softfloat-linux-uclibc-ld:
ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_truncdfsf2.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(_truncdfsf2.o)
arm-softfloat-linux-uclibc-ld:
ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_divdi3.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(_divdi3.o)
arm-softfloat-linux-uclibc-ld:
ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_moddi3.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(_moddi3.o)
arm-softfloat-linux-uclibc-ld:
ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_clz.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(_clz.o)


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
> >
> >   
> 

-- 
gentoo-embedded@gentoo.org mailing list



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

* Re: [gentoo-embedded] asm/page.h: No such file or directory - Link error
  2007-10-31 19:20   ` [gentoo-embedded] asm/page.h: No such file or directory - Link error Jean-Claude Gervais
@ 2007-10-31 19:31     ` Jason
  2007-10-31 19:41     ` Pal Szasz
  2007-11-02 16:00     ` Mike Frysinger
  2 siblings, 0 replies; 16+ messages in thread
From: Jason @ 2007-10-31 19:31 UTC (permalink / raw
  To: gentoo-embedded

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:

I've had success with the following:

binutils-2.17
gcc-3.4.6-r2
linux-headers-2.6.19.2-r2
uclibc-0.9.28.3

At the least, you probably want to step down to gcc-3.4.6

hth,

Jason.
-- 
gentoo-embedded@gentoo.org mailing list



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

* Re: [gentoo-embedded] asm/page.h: No such file or directory - Link error
  2007-10-31 19:20   ` [gentoo-embedded] asm/page.h: No such file or directory - Link error Jean-Claude Gervais
  2007-10-31 19:31     ` Jason
@ 2007-10-31 19:41     ` Pal Szasz
  2007-10-31 19:43       ` Pal Szasz
  2007-11-02 16:00     ` Mike Frysinger
  2 siblings, 1 reply; 16+ messages in thread
From: Pal Szasz @ 2007-10-31 19:41 UTC (permalink / raw
  To: gentoo-embedded

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:
> ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_divsi3.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(_divsi3.o)
> arm-softfloat-linux-uclibc-ld:
> ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_umodsi3.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(_umodsi3.o)
> arm-softfloat-linux-uclibc-ld:
> ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_modsi3.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(_modsi3.o)
> arm-softfloat-linux-uclibc-ld:
> ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_dvmd_lnx.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(_dvmd_lnx.o)
> arm-softfloat-linux-uclibc-ld:
> ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_addsubdf3.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(_addsubdf3.o)
> arm-softfloat-linux-uclibc-ld:
> ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_muldivdf3.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(_muldivdf3.o)
> arm-softfloat-linux-uclibc-ld:
> ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_cmpdf2.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(_cmpdf2.o)
> arm-softfloat-linux-uclibc-ld:
> ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_fixunsdfsi.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(_fixunsdfsi.o)
> arm-softfloat-linux-uclibc-ld:
> ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_truncdfsf2.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(_truncdfsf2.o)
> arm-softfloat-linux-uclibc-ld:
> ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_divdi3.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(_divdi3.o)
> arm-softfloat-linux-uclibc-ld:
> ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_moddi3.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(_moddi3.o)
> arm-softfloat-linux-uclibc-ld:
> ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_clz.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(_clz.o)
>
>
> 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
>>>
>>>   
>>>       
>
>   

-- 
gentoo-embedded@gentoo.org mailing list



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

* Re: [gentoo-embedded] asm/page.h: No such file or directory - Link error
  2007-10-31 19:41     ` Pal Szasz
@ 2007-10-31 19:43       ` Pal Szasz
  2007-10-31 20:27         ` Jean-Claude Gervais
  0 siblings, 1 reply; 16+ messages in thread
From: Pal Szasz @ 2007-10-31 19:43 UTC (permalink / raw
  To: gentoo-embedded

Just a little addition: there is another flag which might be involved:

-mfloat-abi=softfp

/Pal Szasz

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:
>> ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_divsi3.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(_divsi3.o)
>> arm-softfloat-linux-uclibc-ld:
>> ERROR: 
>> /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_umodsi3.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(_umodsi3.o)
>> arm-softfloat-linux-uclibc-ld:
>> ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_modsi3.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(_modsi3.o)
>> arm-softfloat-linux-uclibc-ld:
>> ERROR: 
>> /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_dvmd_lnx.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(_dvmd_lnx.o)
>> arm-softfloat-linux-uclibc-ld:
>> ERROR: 
>> /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_addsubdf3.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(_addsubdf3.o)
>> arm-softfloat-linux-uclibc-ld:
>> ERROR: 
>> /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_muldivdf3.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(_muldivdf3.o)
>> arm-softfloat-linux-uclibc-ld:
>> ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_cmpdf2.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(_cmpdf2.o)
>> arm-softfloat-linux-uclibc-ld:
>> ERROR: 
>> /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_fixunsdfsi.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(_fixunsdfsi.o)
>> arm-softfloat-linux-uclibc-ld:
>> ERROR: 
>> /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_truncdfsf2.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(_truncdfsf2.o)
>> arm-softfloat-linux-uclibc-ld:
>> ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_divdi3.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(_divdi3.o)
>> arm-softfloat-linux-uclibc-ld:
>> ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_moddi3.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(_moddi3.o)
>> arm-softfloat-linux-uclibc-ld:
>> ERROR: /usr/lib/gcc/arm-softfloat-linux-uclibc/4.1.2/libgcc.a(_clz.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(_clz.o)
>>
>>
>> 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
>>>>
>>>>         
>>
>>   
>
>

-- 
gentoo-embedded@gentoo.org mailing list



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

* Re: [gentoo-embedded] asm/page.h: No such file or directory - Link error
  2007-10-31 19:43       ` Pal Szasz
@ 2007-10-31 20:27         ` Jean-Claude Gervais
  2007-11-01 11:25           ` Jason
  0 siblings, 1 reply; 16+ messages in thread
From: Jean-Claude Gervais @ 2007-10-31 20:27 UTC (permalink / raw
  To: gentoo-embedded

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
> >>>>
> >>>>         
> >>
> >>   
> >
> >
> 

-- 
gentoo-embedded@gentoo.org mailing list



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

* Re: [gentoo-embedded] asm/page.h: No such file or directory - Link error
  2007-10-31 20:27         ` Jean-Claude Gervais
@ 2007-11-01 11:25           ` Jason
  2007-11-02 19:08             ` Jean-Claude Gervais
  0 siblings, 1 reply; 16+ messages in thread
From: Jason @ 2007-11-01 11:25 UTC (permalink / raw
  To: gentoo-embedded

Jean-Claude Gervais wrote:
> 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

before you tried this command, did you delete the old attempt?  eg

crossdev -C arm-softfloat-linux-uclibc

Chances are you have stale uclibc files installed from a previous
attempt that are conflicting with the current attempt.

Also, make sure you unset PORTAGE_CONFIGROOT, CTARGET, CHOST, and
CBUILD.  Those may foul up crossdev (You're not cross-compiling a
cross-compiling toolchain are you?).  Those variable assignments are for
_after_ the toolchain is built when you want to use it.

hth,

Jason.
-- 
gentoo-embedded@gentoo.org mailing list



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

* Re: [gentoo-embedded] asm/page.h: No such file or directory - Link error
  2007-10-31 19:20   ` [gentoo-embedded] asm/page.h: No such file or directory - Link error Jean-Claude Gervais
  2007-10-31 19:31     ` Jason
  2007-10-31 19:41     ` Pal Szasz
@ 2007-11-02 16:00     ` Mike Frysinger
  2007-11-02 16:33       ` Marco Costa
  2 siblings, 1 reply; 16+ messages in thread
From: Mike Frysinger @ 2007-11-02 16:00 UTC (permalink / raw
  To: gentoo-embedded; +Cc: Jean-Claude Gervais

[-- Attachment #1: Type: text/plain, Size: 624 bytes --]

On Wednesday 31 October 2007, Jean-Claude Gervais wrote:
> Thank you, Pal!

stop with the top posting

> 	That did indeed help; by putting an empty file at
>
> /usr/arm-softfloat-linux-uclibc/usr/include/asm/page.h

this has been fixed in newer uClibc's, but this workaround should get you to 
compile (most of the time)

> 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

softfloat is broken in gcc-4.x so until someone looks into it and fixes it, 
use gcc-3.4.x for softfloat
-mike

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 827 bytes --]

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

* Re: [gentoo-embedded] asm/page.h: No such file or directory - Link error
  2007-11-02 16:00     ` Mike Frysinger
@ 2007-11-02 16:33       ` Marco Costa
  2007-11-02 16:37         ` Jason
  0 siblings, 1 reply; 16+ messages in thread
From: Marco Costa @ 2007-11-02 16:33 UTC (permalink / raw
  To: gentoo-embedded

Hi Mike.

> stop with the top posting
>

There are some nice words, like "please", did you know that?

My best regards,

Marco Costa.
-- 
gentoo-embedded@gentoo.org mailing list



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

* Re: [gentoo-embedded] asm/page.h: No such file or directory - Link error
  2007-11-02 16:33       ` Marco Costa
@ 2007-11-02 16:37         ` Jason
  2007-11-02 16:44           ` Marco Costa
  0 siblings, 1 reply; 16+ messages in thread
From: Jason @ 2007-11-02 16:37 UTC (permalink / raw
  To: gentoo-embedded


A: No.
Q: Should I include quotations after my reply?

Marco Costa wrote:
> Hi Mike.
> 
>> stop with the top posting
>>
> 
> There are some nice words, like "please", did you know that?

I've found gregkh's approach works the best (see above)

Jason.
-- 
gentoo-embedded@gentoo.org mailing list



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

* Re: [gentoo-embedded] asm/page.h: No such file or directory - Link error
  2007-11-02 16:37         ` Jason
@ 2007-11-02 16:44           ` Marco Costa
  0 siblings, 0 replies; 16+ messages in thread
From: Marco Costa @ 2007-11-02 16:44 UTC (permalink / raw
  To: gentoo-embedded

Hi Jason!

2007/11/2, Jason <gentoo@lakedaemon.net>:
>
> A: No.
> Q: Should I include quotations after my reply?
>
>
> I've found gregkh's approach works the best (see above)
>

It is very subtle and instructive indeed ;).

Regards,

Marco Costa
-- 
gentoo-embedded@gentoo.org mailing list



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

* Re: [gentoo-embedded] asm/page.h: No such file or directory - Link error
  2007-11-01 11:25           ` Jason
@ 2007-11-02 19:08             ` Jean-Claude Gervais
  2007-11-02 19:58               ` Jason
  0 siblings, 1 reply; 16+ messages in thread
From: Jean-Claude Gervais @ 2007-11-02 19:08 UTC (permalink / raw
  To: gentoo-embedded

On Thu, 2007-11-01 at 07:25 -0400, Jason wrote:
> Jean-Claude Gervais wrote:
> > 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
> 
> before you tried this command, did you delete the old attempt?  eg
> 
> crossdev -C arm-softfloat-linux-uclibc
> 
> Chances are you have stale uclibc files installed from a previous
> attempt that are conflicting with the current attempt.
You are correct, unmerging the gcc did the trick.
> 
> Also, make sure you unset PORTAGE_CONFIGROOT, CTARGET, CHOST, and
> CBUILD.  Those may foul up crossdev (You're not cross-compiling a
> cross-compiling toolchain are you?).  Those variable assignments are for
> _after_ the toolchain is built when you want to use it.

I'm a bit confused. I had those defined while crossdev was running. It
might explain some of the problems I've had.
>From your description, it appears generating the toolset is SIMPLER than
I thought.

Just to be clear; I am executing the following, is it OK?

-.-.-.-.-.-.-.-.-.-.-.-.-
SYSROOT="/usr/arm-softfloat-linux-uclibc"
UCLIBC_CPU="ARM920T" USE="-*" crossdev -v -S --gcc 3.4.6-r2 --ex-gdb
--target arm-softfloat-linux-uclibc

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

Apart from having to create an empty
$SYSROOT/usr/include/asm/page.h
the toolchain builds.

I came to a erroneous conclusion of setting CBUILD, CHOST, CTARGET and
PORTAGE_CONFIGROOT during crossdev execution from (mis)reading this
documentation:
http://www.gentoo.org/proj/en/base/embedded/cross-development.xml

Is this document out of date? It mentions setting the ROOT variable, but
crossdev complained that ROOT was not supported... Maybe ROOT is not
intended to be used with crossedev, in which case it's another
misunderstanding on my part.

Is there a document I should read that might help?

Thank you very much for your help, Jason.

PS - About the top-posting, it was a mistake on my part, thanks to those
who pointed it out.


-- 
gentoo-embedded@gentoo.org mailing list



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

* Re: [gentoo-embedded] asm/page.h: No such file or directory - Link error
  2007-11-02 19:08             ` Jean-Claude Gervais
@ 2007-11-02 19:58               ` Jason
  2008-01-14 19:08                 ` Christopher Friedt
  0 siblings, 1 reply; 16+ messages in thread
From: Jason @ 2007-11-02 19:58 UTC (permalink / raw
  To: gentoo-embedded

Jean-Claude Gervais wrote:
> On Thu, 2007-11-01 at 07:25 -0400, Jason wrote:
>> Jean-Claude Gervais wrote:
>>> 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
>> before you tried this command, did you delete the old attempt?  eg
>>
>> crossdev -C arm-softfloat-linux-uclibc
>>
>> Chances are you have stale uclibc files installed from a previous
>> attempt that are conflicting with the current attempt.
>
> You are correct, unmerging the gcc did the trick.
>
>> Also, make sure you unset PORTAGE_CONFIGROOT, CTARGET, CHOST, and
>> CBUILD.  Those may foul up crossdev (You're not cross-compiling a
>> cross-compiling toolchain are you?).  Those variable assignments are for
>> _after_ the toolchain is built when you want to use it.
> 
> I'm a bit confused. I had those defined while crossdev was running. It
> might explain some of the problems I've had.
> From your description, it appears generating the toolset is SIMPLER than
> I thought.

Well, once you figure out the correct version numbers for everything,
yes.  ;-)

> 
> Just to be clear; I am executing the following, is it OK?
> 
> -.-.-.-.-.-.-.-.-.-.-.-.-
> SYSROOT="/usr/arm-softfloat-linux-uclibc"
> UCLIBC_CPU="ARM920T" USE="-*" crossdev -v -S --gcc 3.4.6-r2 --ex-gdb
> --target arm-softfloat-linux-uclibc
> 
> -.-.-.-.-.-.-.-.-.-.-.-.-

To my knowledge, crossdev doesn't use $SYSROOT.  It creates it.  So, the
SYSROOT is unnecessary, and most likely harmless.

You probably want to force the version numbers on your binutils, kernel
headers, and uclibc.  Just because the newest version compiles and
installs doesn't means the authors have tested it how you're going to
use it. :-)

> Apart from having to create an empty
> $SYSROOT/usr/include/asm/page.h
> the toolchain builds.
> 
> I came to a erroneous conclusion of setting CBUILD, CHOST, CTARGET and
> PORTAGE_CONFIGROOT during crossdev execution from (mis)reading this
> documentation:
> http://www.gentoo.org/proj/en/base/embedded/cross-development.xml
> 
> Is this document out of date? It mentions setting the ROOT variable, but
> crossdev complained that ROOT was not supported... Maybe ROOT is not
> intended to be used with crossedev, in which case it's another
> misunderstanding on my part.

It's not really out of date, it's just difficult to create one set of
instructions that work for everybody's unique projects.

Using crossdev to create a toolchain and cross-compiling are two
_totally_ different events.  crossdev is creating executables installed
to your host's root filesystem designed to run on your host.  Therefore,
you _don't_ want to set ROOT because then portage would install it
someplace else and it wouldn't be in your PATH.  Use the variables with
xmerge.

> Is there a document I should read that might help?

I've found having and expendable box, nightly backups, and a thick skull
(for the brick walls) works best. ;-)


> Thank you very much for your help, Jason.

No problem.

Jason.
-- 
gentoo-embedded@gentoo.org mailing list



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

* Re: [gentoo-embedded] asm/page.h: No such file or directory - Link error
  2007-11-02 19:58               ` Jason
@ 2008-01-14 19:08                 ` Christopher Friedt
  2008-01-15 16:22                   ` Christopher Friedt
  0 siblings, 1 reply; 16+ messages in thread
From: Christopher Friedt @ 2008-01-14 19:08 UTC (permalink / raw
  To: gentoo-embedded

Has anyone solved the case of the missing asm/page.h yet?

I just ran into the same issue - i also installed my toolchain with 
crossdev but used the stable versions:

crossdev -S arm-softfloat-linux-gnu

Now I'm trying to cross-compile glibc and it's complaining that there is 
no asm/page.h file in /usr/arm-softfloat-linux-gnu (a quick 'find' 
confirms this).

I vaguely remember having run into this before, but I can't for the life 
of me find the solution (I refuse to create an empty file for page.h, 
knowing that it usually has some fairly important contents)

Hmm??

~/Chris
-- 
gentoo-embedded@lists.gentoo.org mailing list



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

* Re: [gentoo-embedded] asm/page.h: No such file or directory - Link error
  2008-01-14 19:08                 ` Christopher Friedt
@ 2008-01-15 16:22                   ` Christopher Friedt
  0 siblings, 0 replies; 16+ messages in thread
From: Christopher Friedt @ 2008-01-15 16:22 UTC (permalink / raw
  To: gentoo-embedded

What I did was

cd /usr/arm-softfloat-linux-gnu/sys-include/asm
ln -sf /usr/src/linux/include/asm-arm/page.h page.h

and that seemed to have worked.

Christopher Friedt wrote:
> Has anyone solved the case of the missing asm/page.h yet?
-- 
gentoo-embedded@lists.gentoo.org mailing list



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

end of thread, other threads:[~2008-01-15 16:18 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-10-31 18:18 [gentoo-embedded] asm/page.h: No such file or directory Jean-Claude Gervais
2007-10-31 18:28 ` Pal Szasz
2007-10-31 19:20   ` [gentoo-embedded] asm/page.h: No such file or directory - Link error Jean-Claude Gervais
2007-10-31 19:31     ` Jason
2007-10-31 19:41     ` Pal Szasz
2007-10-31 19:43       ` Pal Szasz
2007-10-31 20:27         ` Jean-Claude Gervais
2007-11-01 11:25           ` Jason
2007-11-02 19:08             ` Jean-Claude Gervais
2007-11-02 19:58               ` Jason
2008-01-14 19:08                 ` Christopher Friedt
2008-01-15 16:22                   ` Christopher Friedt
2007-11-02 16:00     ` Mike Frysinger
2007-11-02 16:33       ` Marco Costa
2007-11-02 16:37         ` Jason
2007-11-02 16:44           ` Marco Costa

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