[poky] an update about gcc/libc sstate issue
Tian, Kevin
kevin.tian at intel.com
Wed Nov 24 03:33:29 PST 2010
Hi, all,
I did more analysis into this problem, which ends up to two issues:
a) there's a bug which causes an empty dependency task chain for native tasks.
So if -initial or -intermediate recipe is changed, other recipes depending on them such
as gcc-cross/gcc-runtime still get same checksum and installed from sstate. This has
correctness issue, which has been fixed on my branch:
http://git.pokylinux.org/cgit/cgit.cgi/poky-contrib/commit/?h=tk/sstate&id=9fc28eef6dd997776cdd0b904d523b7903c4a9a0
b) on the other hand, gcc-*-intermediate is not a subset of a full featured gcc. E.g,
gcc-runtime depends on some special installation from -intermediate, which are not
found from gcc-cross if gcc-cross-intermediate sstate installation is skipped. This
causes gcc-runtime failed on do_configure if bump up its PR:
---
/media/disk/builds/master.test/tmp/sysroots/i686-linux/usr/bin/armv5te-poky-linux-gnueabi/../../libexec/armv5te-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/4.5.1/ld: crtbegin.o: No such file: No such file or directory
collect2: ld returned 1 exit status
---
I searched crtbegin.o from sstate manifest file, there're three of them:
---
tmp/sstate-control/manifest-i686_armv5te-gcc-cross-intermediate.populate-sysroot:/media/disk/builds/master/tmp/sysroots/i686-linux/usr/lib/armv5te-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/4.5.1/crtbegin.o
tmp/sstate-control/manifest-i686_armv5te-gcc-cross.populate-sysroot:/media/disk/builds/master/tmp/sysroots/i686-linux/usr/include/gcc-build-internal-armv5te-poky-linux-gnueabi/usr/lib/arm-poky-linux-gnueabi/4.5.1/crtbegin.o
tmp/sstate-control/manifest-armv5te-gcc-runtime.populate-sysroot:/media/disk/builds/master/tmp/sysroots/armv5te-poky-linux-gnueabi/usr/lib/arm-poky-linux-gnueabi/4.5.1/crtbegin.o
---
The 1st one is desired. The 2nd one is copied to the 3rd one later.
Instead of tweaking some tricky fix here, I'd think perhaps we should promote the
priority of revising bootstrap process, to have them installed into different sysroot?
Thanks
Kevin
More information about the poky
mailing list