ITADN

Building Canopy/OpenBMC fails because of failing subprocess

#1797Openhaeckle 创建于 2026-05-27
1. Bug
H
haecklecommented
**Describe the bug** Building [Canopy](https://github.com/canopybmc/canopybmc) (an OpenBMC distribution) fails because some files can't be copied and further processed. Excerpt from the log: ```bash Exception: subprocess.CalledProcessError: Command 'tar --exclude=./sysroot-only -cf - -C /var/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/linux-libc-headers/6.18/image -p -S . | tar -xf - -C /var/home/haeckle/workspace/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/linux-libc-headers/6.18/package' returned non-zero exit status 2. Subprocess output: tar: ./usr/include: Cannot mkdir: Function not implemented ``` **Steps how to reproduce the behaviour** 1. Create a new toolbox: `toolbox create canopybmc` (Fedora 44 in this case) 2. Enter toolbox and install dependencies: ```bash sudo dnf install git python3 gcc g++ gawk which bzip2 chrpath cpio hostname file diffutils diffstat lz4 wget zstd rpcgen patch perl-FindBin perl-Thread-Queue perl-File-Compare perl-open ``` 3. Initialize environment: ```bash git clone git@github.com:canopybmc/canopybmc.git cd canopybmc source setup canopy-qemu ``` 5. Start build (**be aware this needs some resources!**): `bitbake obmc-phosphor-image` 6. Encounter error **Expected behaviour** The build runs successfully. **Actual behaviour** The build ends with an error message. **Screenshots** No screenshot, but the console output: ``` 9elements@toolbx canopy-qemu]$ bitbake obmc-phosphor-image Loading cache: 100% |###################################################################################################################################################################################################| Time: 0:00:01 Loaded 5353 entries from dependency cache. Parsing recipes: 100% |#################################################################################################################################################################################################| Time: 0:00:00 Parsing of 3097 .bb files complete (3096 cached, 1 parsed). 5354 targets, 781 skipped, 0 masked, 0 errors. NOTE: Resolving any missing task queue dependencies Build Configuration: BB_VERSION = "2.16.0" BUILD_SYS = "x86_64-linux" NATIVELSBSTRING = "universal" TARGET_SYS = "arm-openbmc-linux-gnueabi" MACHINE = "canopy-qemu" SDKMACHINE = "x86_64" DISTRO = "canopy" DISTRO_VERSION = "nodistro.0" TUNE_FEATURES = "arm armv7a vfp vfpv4d16 callconvention-hard" meta-canopy = "main:ee514ce94b7cd19cdc84809faec93c81fa598c6a" meta meta-oe meta-networking meta-python meta-phosphor meta-aspeed = "HEAD:4bcd6c002b339b1a31ab51d77faddf4e5834776e" Sstate summary: Wanted 1325 Local 0 Mirrors 0 Missed 1325 Current 1928 (0% match, 59% complete) Initialising tasks: 100% |##############################################################################################################################################################################################| Time: 0:00:03 NOTE: Executing Tasks ERROR: linux-libc-headers-6.18-r0 do_package: Error executing a python function in exec_func_python() autogenerated: The stack trace of python calls that resulted in this exception/failure was: File: 'exec_func_python() autogenerated', lineno: 2, function: <module> 0001: *** 0002:perform_packagecopy(d) 0003: File: '/var/home/9elements/Schreibtisch/canopybmc/openbmc/meta/classes-global/package.bbclass', lineno: 365, function: perform_packagecopy 0361: rpath_replace (dvar, d) 0362:} 0363:perform_packagecopy[cleandirs] = "${PKGD}" 0364:perform_packagecopy[dirs] = "${PKGD}" *** 0365: 0366:python populate_packages () { 0367: oe.package.populate_packages(d) 0368:} 0369:populate_packages[dirs] = "${D}" File: '/usr/lib64/python3.14/subprocess.py', lineno: 473, function: check_output 0469: else: 0470: empty = b'' 0471: kwargs['input'] = empty 0472: *** 0473: return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, 0474: **kwargs).stdout 0475: 0476: 0477:class CompletedProcess(object): File: '/usr/lib64/python3.14/subprocess.py', lineno: 578, function: run 0574: # We don't call process.wait() as .__exit__ does that for us. 0575: raise 0576: retcode = process.poll() 0577: if check and retcode: *** 0578: raise CalledProcessError(retcode, process.args, 0579: output=stdout, stderr=stderr) 0580: return CompletedProcess(process.args, retcode, stdout, stderr) 0581: 0582: Exception: subprocess.CalledProcessError: Command 'tar --exclude=./sysroot-only -cf - -C /var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/linux-libc-headers/6.18/image -p -S . | tar -xf - -C /var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/linux-libc-headers/6.18/package' returned non-zero exit status 2. Subprocess output: tar: ./usr/include: Cannot mkdir: Function not implemented tar: ./usr/include/regulator: Cannot mkdir: Function not implemented tar: ./usr/include/regulator/regulator.h: Cannot open: Function not implemented … … … tar: ./usr/include/mtd/inftl-user.h: Cannot open: Function not implemented tar: ./usr/include/mtd/nftl-user.h: Cannot open: Function not implemented tar: ./usr/include/mtd/mtd-abi.h: Cannot open: Function not implemented tar: Exiting with failure status due to previous errors ERROR: Logfile of failure stored in: /var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/linux-libc-headers/6.18/temp/log.do_package.643318 ERROR: Task (/var/home/9elements/Schreibtisch/canopybmc/openbmc/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_6.18.bb:do_package) failed with exit code '1' ERROR: glibc-2.43+git-r1 do_compile: oe_runmake failed ERROR: glibc-2.43+git-r1 do_compile: Execution of '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/temp/run.do_compile.643295' failed with exit code 1 ERROR: Logfile of failure stored in: /var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/temp/log.do_compile.643295 Log data follows: | DEBUG: Executing shell function do_compile | NOTE: make PARALLELMFLAGS=-j 8 SHELL=/bin/bash KSHELL=/bin/sh | make -r PARALLELMFLAGS="-j 8" -C ../sources/glibc-2.43+git objdir=`pwd` all | make[1]: Entering directory '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/sources/glibc-2.43+git' | | type "make help" for help with common glibc makefile targets | | make -j 8 subdir=csu -C csu ..=../ subdir_lib | make -j 8 subdir=iconv -C iconv ..=../ subdir_lib | make -j 8 subdir=locale -C locale ..=../ subdir_lib | make -j 8 subdir=localedata -C localedata ..=../ subdir_lib | make[2]: Entering directory '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/sources/glibc-2.43+git/localedata' | make[2]: Nothing to be done for 'subdir_lib'. | make[2]: Leaving directory '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/sources/glibc-2.43+git/localedata' | make -j 8 subdir=iconvdata -C iconvdata ..=../ subdir_lib | make[2]: Entering directory '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/sources/glibc-2.43+git/iconvdata' | make[2]: Nothing to be done for 'subdir_lib'. | make[2]: Leaving directory '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/sources/glibc-2.43+git/iconvdata' | make -j 8 subdir=assert -C assert ..=../ subdir_lib | make -j 8 subdir=ctype -C ctype ..=../ subdir_lib | make -j 8 subdir=intl -C intl ..=../ subdir_lib | make -j 8 subdir=catgets -C catgets ..=../ subdir_lib | make -j 8 subdir=math -C math ..=../ subdir_lib | make -j 8 subdir=setjmp -C setjmp ..=../ subdir_lib | make -j 8 subdir=signal -C signal ..=../ subdir_lib | make -j 8 subdir=stdlib -C stdlib ..=../ subdir_lib | make -j 8 subdir=stdio-common -C stdio-common ..=../ subdir_lib | make -j 8 subdir=libio -C libio ..=../ subdir_lib | make -j 8 subdir=dlfcn -C dlfcn ..=../ subdir_lib | make -j 8 subdir=nptl -C nptl ..=../ subdir_lib | make[2]: Entering directory '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/sources/glibc-2.43+git/nptl' | make[2]: Leaving directory '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/sources/glibc-2.43+git/nptl' | make -j 8 subdir=rt -C rt ..=../ subdir_lib | make -j 8 subdir=malloc -C malloc ..=../ subdir_lib | make[2]: Entering directory '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/sources/glibc-2.43+git/malloc' | make[2]: Leaving directory '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/sources/glibc-2.43+git/malloc' | make -j 8 subdir=string -C string ..=../ subdir_lib | make[2]: Entering directory '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/sources/glibc-2.43+git/string' | ../Rules:409: warning: overriding recipe for target '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/build-arm-openbmc-linux-gnueabi/string/tst-strerror.out' | ../Rules:396: warning: ignoring old recipe for target '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/build-arm-openbmc-linux-gnueabi/string/tst-strerror.out' | ../Rules:409: warning: overriding recipe for target '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/build-arm-openbmc-linux-gnueabi/string/tst-strsignal.out' | ../Rules:396: warning: ignoring old recipe for target '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/build-arm-openbmc-linux-gnueabi/string/tst-strsignal.out' | make[2]: Leaving directory '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/sources/glibc-2.43+git/string' | make -j 8 subdir=wcsmbs -C wcsmbs ..=../ subdir_lib | make -j 8 subdir=timezone -C timezone ..=../ subdir_lib | make[2]: Entering directory '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/sources/glibc-2.43+git/timezone' | make[2]: Nothing to be done for 'subdir_lib'. | make[2]: Leaving directory '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/sources/glibc-2.43+git/timezone' | make -j 8 subdir=time -C time ..=../ subdir_lib | make -j 8 subdir=dirent -C dirent ..=../ subdir_lib | make -j 8 subdir=posix -C posix ..=../ subdir_lib | make -j 8 subdir=io -C io ..=../ subdir_lib | make[2]: Entering directory '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/sources/glibc-2.43+git/io' | make[2]: Leaving directory '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/sources/glibc-2.43+git/io' | /var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/build-arm-openbmc-linux-gnueabi/io/close_range.os.d:60: *** missing separator. Stop. | make[1]: *** [Makefile:504: io/subdir_lib] Error 2 | make[1]: Leaving directory '/var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/sources/glibc-2.43+git' | make: *** [Makefile:20: all] Error 2 | ERROR: oe_runmake failed | WARNING: /var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/temp/run.do_compile.643295:189 exit 1 from 'exit 1' | WARNING: Backtrace (BB generated script): | #1: bbfatal_log, /var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/temp/run.do_compile.643295, line 189 | #2: die, /var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/temp/run.do_compile.643295, line 174 | #3: oe_runmake, /var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/temp/run.do_compile.643295, line 179 | #4: base_do_compile, /var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/temp/run.do_compile.643295, line 157 | #5: do_compile, /var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/temp/run.do_compile.643295, line 142 | #6: main, /var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/temp/run.do_compile.643295, line 199 ERROR: Task (/var/home/9elements/Schreibtisch/canopybmc/openbmc/meta/recipes-core/glibc/glibc_2.43.bb:do_compile) failed with exit code '1' NOTE: Tasks Summary: Attempted 1607 tasks of which 1604 didn't need to be rerun and 2 failed. Summary: 2 tasks failed: /var/home/9elements/Schreibtisch/canopybmc/openbmc/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_6.18.bb:do_package log: /var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/linux-libc-headers/6.18/temp/log.do_package.643318 /var/home/9elements/Schreibtisch/canopybmc/openbmc/meta/recipes-core/glibc/glibc_2.43.bb:do_compile log: /var/home/9elements/Schreibtisch/canopybmc/build/canopy-qemu/tmp/work/armv7ahf-vfpv4d16-openbmc-linux-gnueabi/glibc/2.43+git/temp/log.do_compile.643295 Summary: There were 3 ERROR messages, returning a non-zero exit code. ``` **Output of `toolbox --version` (v0.0.90+)** `toolbox version 0.3` **Toolbx package info (`rpm -q toolbox`)** `toolbox-0.3-4.fc44.x86_64` **Output of `podman version`** ``` Client: Podman Engine Version: 5.8.2 API Version: 5.8.2 Go Version: go1.26.1-X:nodwarf5 Git Commit: 5b263b5f5b48004a87caac44e67349a8266d9ef4 Built: Tue Apr 14 02:00:00 2026 Build Origin: Fedora Project OS/Arch: linux/amd64 ``` **Podman package info (`rpm -q podman`)** `podman-5.8.2-1.fc44.x86_64` **Info about your OS** Fedora Silverblue 44 **Additional context** There was a recent error with AppArmor on Ubuntu ([#2056555](https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/2056555)), however SELinux seems to not have a problem (at least from what I encounter). But I could imagine that it has something to do with bitbake using namespaces (see this [comment](https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/2056555/comments/12))
3 条评论