On 6/25/2011 1:38 PM, Koen Kooi wrote:
Hi,

I was spending some spare cycles on
https://github.com/koenkooi/meta-archos and wanted to build the 2.6.22
vendor kernel first before trying to the 3.0rc working and I need to use
csl 2007q3 as gcc-cross-kernel due to bugs in the kernel.

I imported the 2008q1 recipes from OE-core, then changed the SRC_URI to
have the patches from the 2007q3 recipe in OE classic. It uses the .inc
files from OE-core. It builds and gives me:

koen@dominion:/OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-kernel-4.2.1-4.2.1+csl-arm-2007q3-53-r0/image$
find . | grep bin
./OE/tentacle/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/bin

./OE/tentacle/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/bin/armv7a-angstrom-linux-gnueabi.gcc-cross-kernel-4.2.1

./OE/tentacle/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/bin/armv7a-angstrom-linux-gnueabi.gcc-cross-kernel-4.2.1/arm-angstrom-linux-gnueabi-gcov

./OE/tentacle/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/bin/armv7a-angstrom-linux-gnueabi.gcc-cross-kernel-4.2.1/arm-angstrom-linux-gnueabi-gccbug

./OE/tentacle/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/bin/arm-angstrom-linux-gnueabi-gcc-4.2.1+csl-arm-2007q3-53


But when I do 'MACHINE=archos5 bitbake virtual/kernel -c compile' I get:

| + make -j4 zImage 'CC=ccache
arm-angstrom-linux-gnueabi-gcc-4.2.1+csl-arm-2007q3-53
-mno-thumb-interwork -mno-thumb
--sysroot=/OE/tentacle/build/tmp-angstrom_2010_x-eglibc/sysroots/archos5' 
'LD=arm-angstrom-linux-gnueabi-ld
--sysroot=/OE/tentacle/build/tmp-angstrom_2010_x-eglibc/sysroots/archos5
--sysroot=/OE/tentacle/build/tmp-angstrom_2010_x-eglibc/sysroots/archos5'
| arm-angstrom-linux-gnueabi-gcc-4.2.1+csl-arm-2007q3-53: No such file
or directory

And I can't find arm-angstrom-linux-gnueabi-gcc-4.2.1+csl-arm-2007q3-53
in sysroots. When looking at WORKDIR for the gcc:

koen@dominion:/OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-cross-kernel-4.2.1-4.2.1+csl-arm-2007q3-53-r0$
find sysroot-destdir/ | grep bin
sysroot-destdir/OE/tentacle/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/bin

sysroot-destdir/OE/tentacle/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/bin/armv7a-angstrom-linux-gnueabi.gcc-cross-kernel-4.2.1

sysroot-destdir/OE/tentacle/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/bin/armv7a-angstrom-linux-gnueabi.gcc-cross-kernel-4.2.1/arm-angstrom-linux-gnueabi-gcov

sysroot-destdir/OE/tentacle/build/tmp-angstrom_2010_x-eglibc/sysroots/x86_64-linux/usr/bin/armv7a-angstrom-linux-gnueabi.gcc-cross-kernel-4.2.1/arm-angstrom-linux-gnueabi-gccbug


So that's missing the
arm-angstrom-linux-gnueabi-gcc-4.2.1+csl-arm-2007q3-53 that's actually
needed.

in oe-core we munge CROSS_TARGET_SYS_DIR and append PN to it, this should be considered in gcc-cross-kernel.inc

you need couple of changes

change the install command like below in gcc-cross-kernel.inc

install -m 0755 xgcc ${D}${STAGING_DIR_NATIVE}${prefix_native}/bin/${TARGET_PREFIX}gcc-${PV}

secondly you need to inform kernel recipe of this new location of toolchain

so in you kernel recipe somewhere patch the below code

PATH_prepend = "${STAGING_BINDIR_TOOLCHAIN}.gcc-cross-kernel:"

Thanks

-Khem

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

Reply via email to