OpemBMC/Yocto Glibc do_package 失败

OpemBMC/Yocto Glibc do_package fails

我是 OpenBMC/Yocto 的新手。

对于glibctarget,之前的任务如do_compile()等工作正常,但在do_package()任务失败:

bruin@cl2100 /ssd/devkit/build (master) $ bitbake glibc -c package
WARNING: Layer ast2600-devkit should set LAYERSERIES_COMPAT_ast2600-devkit in its conf/layer.conf file to list the core layer names it is compatible with.
WARNING: Layer ast2600-devkit should set LAYERSERIES_COMPAT_ast2600-devkit in its conf/layer.conf file to list the core layer names it is compatible with.
Loading cache: 100% |#############################################################################################################| Time: 0:00:01
Loaded 3353 entries from dependency cache.
Parsing recipes: 100% |###########################################################################################################| Time: 0:00:04
Parsing of 2344 .bb files complete (2274 cached, 70 parsed). 3429 targets, 339 skipped, 0 masked, 0 errors.
WARNING: No bb files matched BBFILE_PATTERN_ast2600-devkit ''
NOTE: Resolving any missing task queue dependencies

Build Configuration:
BB_VERSION           = "1.42.0"
BUILD_SYS            = "x86_64-linux"
NATIVELSBSTRING      = "debian-11"
TARGET_SYS           = "arm-openbmc-linux-gnueabi"
MACHINE              = "ast2600-devkit"
DISTRO               = "openbmc-phosphor"
DISTRO_VERSION       = "0.1.0"
TUNE_FEATURES        = "arm armv7a vfp vfpv4d16 callconvention-hard"
TARGET_FPU           = "hard"
meta
meta-poky
meta-oe
meta-networking
meta-python
meta-webserver
meta-phosphor
meta-aspeed
meta-ami
meta-ast2600-devkit  = "master:0a8a6b7628d866c20ac674a213fcba68e34a33c4"

Initialising tasks: 100% |########################################################################################################| Time: 0:00:01
Sstate summary: Wanted 2 Found 1 Missed 1 Current 55 (50% match, 98% complete)
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
ERROR: glibc-2.29-r0 do_package: 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:perform_packagecopy(d)
     0003:
File: '/ssd/devkit/meta/classes/package.bbclass', lineno: 662, function: perform_packagecopy
     0658:        rpath_replace (dvar, d)
     0659:}
     0660:perform_packagecopy[cleandirs] = "${PKGD}"
     0661:perform_packagecopy[dirs] = "${PKGD}"
 *** 0662:
     0663:# We generate a master list of directories to process, we start by
     0664:# seeding this list with reasonable defaults, then load from
     0665:# the fs-perms.txt files
     0666:python fixup_perms () {
File: '/usr/lib/python3.9/subprocess.py', lineno: 424, function: check_output
     0420:        else:
     0421:            empty = b''
     0422:        kwargs['input'] = empty
     0423:
 *** 0424:    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
     0425:               **kwargs).stdout
     0426:
     0427:
     0428:class CompletedProcess(object):
File: '/usr/lib/python3.9/subprocess.py', lineno: 528, function: run
     0524:            # We don't call process.wait() as .__exit__ does that for us.
     0525:            raise
     0526:        retcode = process.poll()
     0527:        if check and retcode:
 *** 0528:            raise CalledProcessError(retcode, process.args,
     0529:                                     output=stdout, stderr=stderr)
     0530:    return CompletedProcess(process.args, retcode, stdout, stderr)
     0531:
     0532:
Exception: subprocess.CalledProcessError: Command 'tar -cf - -C /ssd/devkit/build/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.29-r0/image -p -S . | tar -xf - -C /ssd/devkit/build/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.29-r0/package' returned non-zero exit status 2.

Subprocess output:
tar: ./lib/libpthread.so.0: Cannot change mode to rwxrwxrwx: No such file or directory
tar: ./lib/librt.so.1: Cannot change mode to rwxrwxrwx: No such file or directory
tar: ./lib/libdl.so.2: Cannot change mode to rwxrwxrwx: No such file or directory
tar: ./lib/libnss_db.so.2: Cannot change mode to rwxrwxrwx: No such file or directory
tar: ./lib/ld-linux-armhf.so.3: Cannot change mode to rwxrwxrwx: No such file or directory
tar: ./lib/libnss_compat.so.2: Cannot change mode to rwxrwxrwx: No such file or directory
tar: ./lib/libnsl.so.1: Cannot change mode to rwxrwxrwx: No such file or directory
tar: Exiting with failure status due to previous errors

ERROR: glibc-2.29-r0 do_package: Command 'tar -cf - -C /ssd/devkit/build/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.29-r0/image -p -S . | tar -xf - -C /ssd/devkit/build/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.29-r0/package' returned non-zero exit status 2.
ERROR: glibc-2.29-r0 do_package: Function failed: perform_packagecopy
ERROR: Logfile of failure stored in: /ssd/devkit/build/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.29-r0/temp/log.do_package.2941902
ERROR: Task (/ssd/devkit/meta/recipes-core/glibc/glibc_2.29.bb:do_package) failed with exit code '1'
NOTE: Tasks Summary: Attempted 431 tasks of which 430 didn't need to be rerun and 1 failed.

Summary: 1 task failed:
  /ssd/devkit/meta/recipes-core/glibc/glibc_2.29.bb:do_package
Summary: There were 3 WARNING messages shown.
Summary: There were 3 ERROR messages shown, returning a non-zero exit code.

显示tar exit code是2:但是我在shell中执行命令(tar -cf - -C /ssd/devkit/build/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.29-r0/image -p -S . | tar -xf - -C /ssd/devkit/build/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.29-r0/package)时,exit code是0没有错误。

它抱怨找不到某些文件:但是 src/dst 文件夹中都存在,作为符号链接:

 $ ls -la  /ssd/devkit/build/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.29-r0/image/lib
total 25836
drwxr-xr-x 3 bruin bruin     4096 Jan 28 21:16 .
drwxr-xr-x 7 bruin bruin     4096 Jan 28 21:16 ..
-rwxr-xr-x 1 bruin bruin  1342112 Jan 28 21:16 ld-2.29.so
lrwxrwxrwx 1 bruin bruin       10 Jan 28 21:16 ld-linux-armhf.so.3 -> ld-2.29.so
-rwxr-xr-x 1 bruin bruin   132860 Jan 28 21:16 libanl-2.29.so
lrwxrwxrwx 1 bruin bruin       14 Jan 28 21:16 libanl.so.1 -> libanl-2.29.so
-rwxr-xr-x 1 bruin bruin    24772 Jan 28 21:14 libBrokenLocale-2.29.so
lrwxrwxrwx 1 bruin bruin       23 Jan 28 21:14 libBrokenLocale.so.1 -> libBrokenLocale-2.29.so
-rwxr-xr-x 1 bruin bruin 16277872 Jan 28 21:16 libc-2.29.so
lrwxrwxrwx 1 bruin bruin       12 Jan 28 21:15 libc.so.6 -> libc-2.29.so
-rwxr-xr-x 1 bruin bruin   223884 Jan 28 21:15 libdl-2.29.so
lrwxrwxrwx 1 bruin bruin       13 Jan 28 21:15 libdl.so.2 -> libdl-2.29.so
-rwxr-xr-x 1 bruin bruin  2241936 Jan 28 21:15 libm-2.29.so
-rwxr-xr-x 1 bruin bruin    83116 Jan 28 21:15 libmemusage.so
lrwxrwxrwx 1 bruin bruin       12 Jan 28 21:15 libm.so.6 -> libm-2.29.so
-rwxr-xr-x 1 bruin bruin   718332 Jan 28 21:16 libnsl-2.29.so
lrwxrwxrwx 1 bruin bruin       14 Jan 28 21:16 libnsl.so.1 -> libnsl-2.29.so
-rwxr-xr-x 1 bruin bruin   178048 Jan 28 21:16 libnss_compat-2.29.so
lrwxrwxrwx 1 bruin bruin       21 Jan 28 21:16 libnss_compat.so.2 -> libnss_compat-2.29.so
-rwxr-xr-x 1 bruin bruin   261964 Jan 28 21:16 libnss_db-2.29.so
lrwxrwxrwx 1 bruin bruin       17 Jan 28 21:16 libnss_db.so.2 -> libnss_db-2.29.so
-rwxr-xr-x 1 bruin bruin   121324 Jan 28 21:16 libnss_dns-2.29.so
lrwxrwxrwx 1 bruin bruin       18 Jan 28 21:16 libnss_dns.so.2 -> libnss_dns-2.29.so
-rwxr-xr-x 1 bruin bruin   371120 Jan 28 21:16 libnss_files-2.29.so
lrwxrwxrwx 1 bruin bruin       20 Jan 28 21:16 libnss_files.so.2 -> libnss_files-2.29.so
-rwxr-xr-x 1 bruin bruin   114772 Jan 28 21:16 libnss_hesiod-2.29.so
lrwxrwxrwx 1 bruin bruin       21 Jan 28 21:16 libnss_hesiod.so.2 -> libnss_hesiod-2.29.so
-rwxr-xr-x 1 bruin bruin    11888 Jan 28 21:16 libpcprofile.so
-rwxr-xr-x 1 bruin bruin  2755760 Jan 28 21:15 libpthread-2.29.so
lrwxrwxrwx 1 bruin bruin       18 Jan 28 21:15 libpthread.so.0 -> libpthread-2.29.so
-rwxr-xr-x 1 bruin bruin   434272 Jan 28 21:16 libresolv-2.29.so
lrwxrwxrwx 1 bruin bruin       17 Jan 28 21:16 libresolv.so.2 -> libresolv-2.29.so
-rwxr-xr-x 1 bruin bruin   423408 Jan 28 21:16 librt-2.29.so
lrwxrwxrwx 1 bruin bruin       13 Jan 28 21:16 librt.so.1 -> librt-2.29.so
-rwxr-xr-x 1 bruin bruin    62072 Jan 28 21:16 libSegFault.so
-rwxr-xr-x 1 bruin bruin   580432 Jan 28 21:16 libthread_db-1.0.so
lrwxrwxrwx 1 bruin bruin       19 Jan 28 21:16 libthread_db.so.1 -> libthread_db-1.0.so
-rwxr-xr-x 1 bruin bruin    39564 Jan 28 21:16 libutil-2.29.so
lrwxrwxrwx 1 bruin bruin       15 Jan 28 21:16 libutil.so.1 -> libutil-2.29.so
drwxr-xr-x 3 bruin bruin     4096 Jan 28 21:16 systemd

 $ ls -la  /ssd/devkit/build/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.29-r0/package/lib
total 25836
drwxr-xr-x 3 bruin bruin     4096 Jan 28 21:16 .
drwxr-xr-x 7 bruin bruin     4096 Jan 28 21:16 ..
-rwxr-xr-x 1 bruin bruin  1342112 Jan 28 21:16 ld-2.29.so
lrwxrwxrwx 1 bruin bruin       10 Jan 28 21:16 ld-linux-armhf.so.3 -> ld-2.29.so
-rwxr-xr-x 1 bruin bruin   132860 Jan 28 21:16 libanl-2.29.so
lrwxrwxrwx 1 bruin bruin       14 Jan 28 21:16 libanl.so.1 -> libanl-2.29.so
-rwxr-xr-x 1 bruin bruin    24772 Jan 28 21:14 libBrokenLocale-2.29.so
lrwxrwxrwx 1 bruin bruin       23 Jan 28 21:14 libBrokenLocale.so.1 -> libBrokenLocale-2.29.so
-rwxr-xr-x 1 bruin bruin 16277872 Jan 28 21:16 libc-2.29.so
lrwxrwxrwx 1 bruin bruin       12 Jan 28 21:15 libc.so.6 -> libc-2.29.so
-rwxr-xr-x 1 bruin bruin   223884 Jan 28 21:15 libdl-2.29.so
lrwxrwxrwx 1 bruin bruin       13 Jan 28 21:15 libdl.so.2 -> libdl-2.29.so
-rwxr-xr-x 1 bruin bruin  2241936 Jan 28 21:15 libm-2.29.so
-rwxr-xr-x 1 bruin bruin    83116 Jan 28 21:15 libmemusage.so
lrwxrwxrwx 1 bruin bruin       12 Jan 28 21:15 libm.so.6 -> libm-2.29.so
-rwxr-xr-x 1 bruin bruin   718332 Jan 28 21:16 libnsl-2.29.so
lrwxrwxrwx 1 bruin bruin       14 Jan 28 21:16 libnsl.so.1 -> libnsl-2.29.so
-rwxr-xr-x 1 bruin bruin   178048 Jan 28 21:16 libnss_compat-2.29.so
lrwxrwxrwx 1 bruin bruin       21 Jan 28 21:16 libnss_compat.so.2 -> libnss_compat-2.29.so
-rwxr-xr-x 1 bruin bruin   261964 Jan 28 21:16 libnss_db-2.29.so
lrwxrwxrwx 1 bruin bruin       17 Jan 28 21:16 libnss_db.so.2 -> libnss_db-2.29.so
-rwxr-xr-x 1 bruin bruin   121324 Jan 28 21:16 libnss_dns-2.29.so
lrwxrwxrwx 1 bruin bruin       18 Jan 28 21:16 libnss_dns.so.2 -> libnss_dns-2.29.so
-rwxr-xr-x 1 bruin bruin   371120 Jan 28 21:16 libnss_files-2.29.so
lrwxrwxrwx 1 bruin bruin       20 Jan 28 21:16 libnss_files.so.2 -> libnss_files-2.29.so
-rwxr-xr-x 1 bruin bruin   114772 Jan 28 21:16 libnss_hesiod-2.29.so
lrwxrwxrwx 1 bruin bruin       21 Jan 28 21:16 libnss_hesiod.so.2 -> libnss_hesiod-2.29.so
-rwxr-xr-x 1 bruin bruin    11888 Jan 28 21:16 libpcprofile.so
-rwxr-xr-x 1 bruin bruin  2755760 Jan 28 21:15 libpthread-2.29.so
lrwxrwxrwx 1 bruin bruin       18 Jan 28 21:15 libpthread.so.0 -> libpthread-2.29.so
-rwxr-xr-x 1 bruin bruin   434272 Jan 28 21:16 libresolv-2.29.so
lrwxrwxrwx 1 bruin bruin       17 Jan 28 21:16 libresolv.so.2 -> libresolv-2.29.so
-rwxr-xr-x 1 bruin bruin   423408 Jan 28 21:16 librt-2.29.so
lrwxrwxrwx 1 bruin bruin       13 Jan 28 21:16 librt.so.1 -> librt-2.29.so
-rwxr-xr-x 1 bruin bruin    62072 Jan 28 21:16 libSegFault.so
-rwxr-xr-x 1 bruin bruin   580432 Jan 28 21:16 libthread_db-1.0.so
lrwxrwxrwx 1 bruin bruin       19 Jan 28 21:16 libthread_db.so.1 -> libthread_db-1.0.so
-rwxr-xr-x 1 bruin bruin    39564 Jan 28 21:16 libutil-2.29.so
lrwxrwxrwx 1 bruin bruin       15 Jan 28 21:16 libutil.so.1 -> libutil-2.29.so
drwxr-xr-x 3 bruin bruin     4096 Jan 28 21:16 systemd

我应该去哪里寻找 causes/solutions?谢谢!

这些问题看起来像是伪假根仿真中的问题。

即将推出 https://wiki.yoctoproject.org/wiki/Releases bitbake 1.42 基于 2019 年的战士系列和 2020 年 6 月的 EOL。你不太可能在最近的发行版(如 Debian 11)上测试过这么旧的版本现在正在建设。我建议构建更新的东西或使用旧的主机发行版。