The mklibs script appears to have hardcoded references to /lib, /usr/lib and /usr/X11R6/lib in it. These references need to support the variable baselib paths supported by OE-Core. In order to reproduce the problem: setup a build, configure local.conf with: MULTILIBS = "" require conf/multilib.conf Enable mklibs with: MKLIBS_OPTIMIZED_IMAGES ?= "all" Build a filesystem on a target that does NOT have "/lib", such as qemux86-64.. It will generate a python failure in the mklibs process.
Testing config: local.conf: MULTILIBS = "" require conf/multilib.conf MKLIBS_OPTIMIZED_IMAGES ?= "all" MACHINE: qemux86-64 Everything seems fine (no error). Can you give me more details? Constantin
perhaps this has been fixed? The issue (when first reported) was that '/lib' was hard coded into the mklibs. If you built an architecture that didn't have a /lib, or the libraries were not in /lib, you would either get a large number of warnings/errors (non-fatal) in the rootfs log... or you would end up with a python failure (fatal). The end result was that the target filesystem, if it completed, would not actually be prelinked.
in the last comment I meant library optimized, NOT prelinked. Sorry.
This bug has been fixed. commit d6ef548c48968d16f7e24dec7452ddb455c26d46 Author: Jesse Zhang <sen.zhang@windriver.com> Date: Tue Aug 7 10:31:57 2012 +0800 image-mklibs: pass correct libdir to mklibs libdir should be specified, or else mklibs won't work for 64bit targets. It wouldn't be able to find the libs. ... Cheers, Constantin