Bug 12210

Summary: populate_sdk_ext failed when multilib
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Robert Yang <liezhi.yang>
Component: devtools / tool chainAssignee: Robert Yang <liezhi.yang>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: Medium+ CC: meta.mr.watcher, meta.watcher, randy.macleod
Version: 2.4   
Target Milestone: 2.5 M2   
Hardware: x86   
OS: Multiple   
Whiteboard: Backport to 2.4.1 and 2.3.3 if needed.
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: No (bug/feature does not impact docs)

Description Robert Yang 2017-10-10 09:11:04 UTC
MACHINE ?= "qemux86-64"
require conf/multilib.conf
MULTILIBS = "multilib:lib32"
DEFAULTTUNE_virtclass-multilib-lib32 = "x86"

$ bitbake lib32-core-image-minimal -cpopulate_sdk_ext

ERROR: lib32-core-image-minimal-1.0-r0 do_sdk_depends: Error executing a python function in exec_python_func() autogenerated:

The stack trace of python calls that resulted in this exception/failure was:
File: 'exec_python_func() autogenerated', lineno: 2, function: <module>
     0001:
 *** 0002:extend_recipe_sysroot(d)
     0003:
File: '/buildarea/lyang1/poky/meta/classes/staging.bbclass', lineno: 565, function: extend_recipe_sysroot
     0561:                    dest = newmanifest[l]
     0562:                    if l.endswith("/"):
     0563:                        staging_copydir(l, targetdir, dest, seendirs)
     0564:                        continue
 *** 0565:                    staging_copyfile(l, targetdir, dest, postinsts, seendirs)
     0566:
     0567:    bb.note("Installed into sysroot: %s" % str(msg_adding))
     0568:    bb.note("Skipping as already exists in sysroot: %s" % str(msg_exists))
     0569:
File: '/buildarea/lyang1/poky/meta/classes/staging.bbclass', lineno: 151, function: staging_copyfile
     0147:        os.symlink(linkto, dest)
     0148:        #bb.warn(c)
     0149:    else:
     0150:        try:
 *** 0151:            os.link(c, dest)
     0152:        except OSError as err:
     0153:            if err.errno == errno.EXDEV:
     0154:                bb.utils.copyfile(c, dest)
     0155:            else:
Exception: FileExistsError: [Errno 17] File exists: '/buildarea/lyang1/test_q64/tmp/sysroots-components/core2-64/openssl/sysroot-providers/openssl10' -> '/buildarea/lyang1/test_q64/tmp/work/qemux86_64-pokymllib32-linux/lib32-core-image-minimal/1.0-r0/lib32-recipe-sysroot/sysroot-providers/openssl10'

ERROR: lib32-core-image-minimal-1.0-r0 do_sdk_depends: Function failed: extend_recipe_sysroot
ERROR: Logfile of failure stored in: /buildarea/lyang1/test_q64/tmp/work/qemux86_64-pokymllib32-linux/lib32-core-image-minimal/1.0-r0/temp/log.do_sdk_depends.26509
ERROR: Task (virtual:multilib:lib32:/buildarea/lyang1/poky/meta/recipes-core/images/core-image-minimal.bb:do_sdk_depends) failed with exit code '1'