[oe] AVR32 + OpenEmbedded: Problems with uclibc-initial do_populate_staging ()
Geoffrey Wossum
geoffrey at pager.net
Fri Mar 7 22:56:41 UTC 2008
On Wednesday 05 March 2008 03:59:40 pm Richard Purdie wrote:
> Which distro and machine are you using? This sounds like something which
> isn't using sysroot or the sysroot workarounds.
>
> Poking around cross hasn't been needed for a while and instead of the
> above, building "cross-linkage" might help. This was removed from the
> linux-libc-headers DEPENDS recently. You may also need
> "staging-linkage", it all depends on the compiler though and if its
> sysroot capable, enabling that would be infinitely preferable.
So much for blaming Atmel for their ld patch. I think I found the REAL
problem.
Checking the log.do_configure for gcc-cross-initial, --with-sysroot was NOT
getting passed to gcc's configure script.
So I started parsing gcc-cross-initial_4.1.2.bb by hand. Here's what it looks
like is happening to me. Eventually, gcc3-build-cross.inc gets required in.
This file will set EXTRA_OECONF to have the "--with-sysroot" option. But a
little later, gcc-cross-initial.inc gets required in. This file resets
EXTRA_OECONF, so the "--with-sysroot" option added by gcc3-build-cross.inc
gets lost.
I attempted to just swap the order of "require gcc-cross_${PV}.bb"
and "require gcc-cross-initial.inc" in gcc-cross-initial_4.1.2.bb. Doing
a "bitbake -c rebuild gcc-cross-initial" built the gcc-cross-initial with the
proper "--with-sysroot" option. Hooray! But then when I tried to resume
building the image, this swap made the overall build system think
that "avr32-gcc-initial-4.1.2" wasn't available. Back to the drawing board.
So then I changed gcc-cross-initial.inc to append onto EXTRA_OECONF instead of
setting EXTRA_OECONF. This seems to work for me now, although I don't know
what other implications this change may have.
Comments?
---
Geoffrey
More information about the Openembedded-devel
mailing list