So, I did the following steps:
-
bitbake core-image-minimal succeeded yesterday
-
bitbake core-image-minimal succeeds today before touch based on already built files
-
find meta -name core-image-minimal.bb -exec touch {} ; Touch image recipe
-
Build failure after touch, see the listing below:
builduser@aa1a2ef56ab7:~/build$ bitbake core-image-minimal
WARNING: Host distribution “ubuntu-18.04” has not been validated with this version of the build system; you may possibly experience unexpected failures. It is recommended that you use a tested distribution.
Loading cache: 100% |####################################################################################| Time: 0:00:00
Loaded 1463 entries from dependency cache.
Parsing recipes: 100% |##################################################################################| Time: 0:00:01
Parsing of 984 .bb files complete (959 cached, 25 parsed). 1463 targets, 158 skipped, 0 masked, 0 errors.
WARNING: No recipes available for:
/home/builduser/yocto/layers/meta-toradex-bsp-common/recipes-support/libsoc/libsoc_0.8.2.bbappend
NOTE: Resolving any missing task queue dependencies
Build Configuration:
BB_VERSION = “1.36.0”
BUILD_SYS = “x86_64-linux”
NATIVELSBSTRING = “universal”
TARGET_SYS = “arm-poky-linux-gnueabi”
MACHINE = “colibri-imx6”
DISTRO = “poky”
DISTRO_VERSION = “2.4.3”
TUNE_FEATURES = “arm armv7a vfp thumb neon callconvention-hard cortexa9”
TARGET_FPU = “hard”
meta
meta-poky
meta-yocto-bsp = “:”
meta-freescale = “HEAD:a4158e3425a79720ddc4c02e76251d567bdceb51”
meta-freescale-3rdparty = “HEAD:a02324e27f7a7ac630dab616f46a8bad7fe2c071”
meta-toradex-bsp-common = “HEAD:3e713eef6e056c955b82adaf4b45286a98c3fcdf”
meta-toradex-nxp = “HEAD:656677f4a68e6747971a4a30550cd72c3beb6a76”
Initialising tasks: 100% |###############################################################################| Time: 0:00:06
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
ERROR: core-image-minimal-1.0-r0 do_image_teziimg: Function failed: do_image_teziimg (log file is located at /home/builduser/build/tmp/work/colibri_imx6-poky-linux-gnueabi/core-image-minimal/1.0-r0/temp/log.do_image_teziimg.6426)
ERROR: Logfile of failure stored in: /home/builduser/build/tmp/work/colibri_imx6-poky-linux-gnueabi/core-image-minimal/1.0-r0/temp/log.do_image_teziimg.6426
Log data follows:
| DEBUG: Executing python function rootfs_tezi_json
| NOTE: Toradex Easy Installer metadata file image.json written.
| DEBUG: Python function rootfs_tezi_json finished
| DEBUG: Executing python function set_image_size
| DEBUG: Python function set_image_size finished
| DEBUG: Executing shell function do_image_teziimg
| NOTE: Create bootfs tarball
| tar: Removing leading `/’ from member names
| tar: /home/builduser/build/tmp/work/colibri_imx6-poky-linux-gnueabi/core-image-minimal/1.0-r0/deploy-core-image-minimal-image-complete/core-image-minimal-colibri-imx6-20190910110041.rootfs.tar.xz: Cannot stat: No such file or directory
| tar: Exiting with failure status due to previous errors
| WARNING: exit code 2 from a shell command.
| ERROR: Function failed: do_image_teziimg (log file is located at /home/builduser/build/tmp/work/colibri_imx6-poky-linux-gnueabi/core-image-minimal/1.0-r0/temp/log.do_image_teziimg.6426)
ERROR: Task (/home/builduser/yocto/layers/meta/recipes-core/images/core-image-minimal.bb:do_image_teziimg) failed with exit code ‘1’
NOTE: Tasks Summary: Attempted 2320 tasks of which 2319 didn’t need to be rerun and 1 failed.
Summary: 1 task failed:
/home/builduser/yocto/layers/meta/recipes-core/images/core-image-minimal.bb:do_image_teziimg
Summary: There were 2 WARNING messages shown.
Summary: There was 1 ERROR message shown, returning a non-zero exit code.
The file is not present:
uilduser@aa1a2ef56ab7:~/build$ ls /home/builduser/build/tmp/work/colibri_imx6-poky-linux-gnueabi/core-image-minimal/1.0-r0/deploy-core-image-minimal-image-complete/
core-image-minimal-colibri-imx6-20190910070712.bootfs.tar
core-image-minimal-colibri-imx6-20190910070712.bootfs.tar.xz
core-image-minimal-colibri-imx6-20190910070712.rootfs.manifest
core-image-minimal-colibri-imx6-20190910070712.rootfs.tar.xz
core-image-minimal-colibri-imx6-20190910070712.rootfs.wic.gz
core-image-minimal-colibri-imx6-20190910070712-Tezi_1.0.tar
core-image-minimal-colibri-imx6-20190910071318.bootfs.tar
core-image-minimal-colibri-imx6-20190910071318.bootfs.tar.xz
core-image-minimal-colibri-imx6-20190910071318-Tezi_1.0.tar
core-image-minimal-colibri-imx6-20190910110041.bootfs.tar
core-image-minimal-colibri-imx6-20190910110041.bootfs.tar.xz
core-image-minimal-colibri-imx6-20190910110041-Tezi_1.0.tar
core-image-minimal-colibri-imx6.manifest
core-image-minimal-colibri-imx6.tar.xz
core-image-minimal-colibri-imx6.wic.gz
Judging by the information on Image generation and the output below, the problem is between do_image
and do_image_complete
builduser@aa1a2ef56ab7:~/build$ bitbake -c do_image core-image-minimal
WARNING: Host distribution "ubuntu-18.04" has not been validated with this version of the build system; you may possibly experience unexpected failures. It is recommended that you use a tested distribution.
Loading cache: 100% |####################################################################################| Time: 0:00:00
Loaded 1463 entries from dependency cache.
WARNING: No recipes available for:
/home/builduser/yocto/layers/meta-toradex-bsp-common/recipes-support/libsoc/libsoc_0.8.2.bbappend
NOTE: Resolving any missing task queue dependencies
Build Configuration:
BB_VERSION = "1.36.0"
BUILD_SYS = "x86_64-linux"
NATIVELSBSTRING = "universal"
TARGET_SYS = "arm-poky-linux-gnueabi"
MACHINE = "colibri-imx6"
DISTRO = "poky"
DISTRO_VERSION = "2.4.3"
TUNE_FEATURES = "arm armv7a vfp thumb neon callconvention-hard cortexa9"
TARGET_FPU = "hard"
meta
meta-poky
meta-yocto-bsp = "<unknown>:<unknown>"
meta-freescale = "HEAD:a4158e3425a79720ddc4c02e76251d567bdceb51"
meta-freescale-3rdparty = "HEAD:a02324e27f7a7ac630dab616f46a8bad7fe2c071"
meta-toradex-bsp-common = "HEAD:3e713eef6e056c955b82adaf4b45286a98c3fcdf"
meta-toradex-nxp = "HEAD:656677f4a68e6747971a4a30550cd72c3beb6a76"
Initialising tasks: 100% |###############################################################################| Time: 0:00:06
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
NOTE: Tasks Summary: Attempted 1964 tasks of which 1964 didn't need to be rerun and all succeeded.
Summary: There were 2 WARNING messages shown.
builduser@aa1a2ef56ab7:~/build$ bitbake -c do_image_complete core-image-minimal
WARNING: Host distribution "ubuntu-18.04" has not been validated with this version of the build system; you may possibly experience unexpected failures. It is recommended that you use a tested distribution.
Loading cache: 100% |####################################################################################| Time: 0:00:00
Loaded 1463 entries from dependency cache.
WARNING: No recipes available for:
/home/builduser/yocto/layers/meta-toradex-bsp-common/recipes-support/libsoc/libsoc_0.8.2.bbappend
NOTE: Resolving any missing task queue dependencies
Build Configuration:
BB_VERSION = "1.36.0"
BUILD_SYS = "x86_64-linux"
NATIVELSBSTRING = "universal"
TARGET_SYS = "arm-poky-linux-gnueabi"
MACHINE = "colibri-imx6"
DISTRO = "poky"
DISTRO_VERSION = "2.4.3"
TUNE_FEATURES = "arm armv7a vfp thumb neon callconvention-hard cortexa9"
TARGET_FPU = "hard"
meta
meta-poky
meta-yocto-bsp = "<unknown>:<unknown>"
meta-freescale = "HEAD:a4158e3425a79720ddc4c02e76251d567bdceb51"
meta-freescale-3rdparty = "HEAD:a02324e27f7a7ac630dab616f46a8bad7fe2c071"
meta-toradex-bsp-common = "HEAD:3e713eef6e056c955b82adaf4b45286a98c3fcdf"
meta-toradex-nxp = "HEAD:656677f4a68e6747971a4a30550cd72c3beb6a76"
Initialising tasks: 100% |###############################################################################| Time: 0:00:06
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
ERROR: core-image-minimal-1.0-r0 do_image_teziimg: Function failed: do_image_teziimg (log file is located at /home/builduser/build/tmp/work/colibri_imx6-poky-linux-gnueabi/core-image-minimal/1.0-r0/temp/log.do_image_teziimg.6577)
ERROR: Logfile of failure stored in: /home/builduser/build/tmp/work/colibri_imx6-poky-linux-gnueabi/core-image-minimal/1.0-r0/temp/log.do_image_teziimg.6577
Log data follows:
| DEBUG: Executing python function rootfs_tezi_json
| NOTE: Toradex Easy Installer metadata file image.json written.
| DEBUG: Python function rootfs_tezi_json finished
| DEBUG: Executing python function set_image_size
| DEBUG: Python function set_image_size finished
| DEBUG: Executing shell function do_image_teziimg
| NOTE: Create bootfs tarball
| tar: Removing leading `/' from member names
| tar: /home/builduser/build/tmp/work/colibri_imx6-poky-linux-gnueabi/core-image-minimal/1.0-r0/deploy-core-image-minimal-image-complete/core-image-minimal-colibri-imx6-20190910113109.rootfs.tar.xz: Cannot stat: No such file or directory
| tar: Exiting with failure status due to previous errors
| WARNING: exit code 2 from a shell command.
| ERROR: Function failed: do_image_teziimg (log file is located at /home/builduser/build/tmp/work/colibri_imx6-poky-linux-gnueabi/core-image-minimal/1.0-r0/temp/log.do_image_teziimg.6577)
ERROR: Task (/home/builduser/yocto/layers/meta/recipes-core/images/core-image-minimal.bb:do_image_teziimg) failed with exit code '1'
NOTE: Tasks Summary: Attempted 2012 tasks of which 2011 didn't need to be rerun and 1 failed.
Summary: 1 task failed:
/home/builduser/yocto/layers/meta/recipes-core/images/core-image-minimal.bb:do_image_teziimg
Summary: There were 2 WARNING messages shown.
Summary: There was 1 ERROR message shown, returning a non-zero exit code.
builduser@aa1a2ef56ab7:~/build$
I have also inspected the task dependencies of do_image_teziimage (bitbake-dumpsig tmp/stamps/colibri_imx6-poky-linux-gnueabi/core-image-minimal/1.0-r0.do_image_teziimg.sigdata.b8f947f7ee585c50142182e2b45b8da4
) and found the following dependencies:
List of dependencies for variable IMAGE_CMD_teziimg is {'XZ_THREADS', 'PV', 'SPL_BINARY', 'KERNEL_IMAGETYPE', 'XZ_COMPRESSION_LEVEL', 'UBOOT_ENV_TEZI', 'IMAGE_NAME', 'IMGDEPLOYDIR', 'DEPLOY_DIR_IMAGE', 'TDX_VERDATE', 'IMAGE_CMD_TAR', 'DATE', 'DTS_FILE', 'UBOOT_BINARY_TEZI', 'XZ_INTEGRITY_CHECK', 'KERNEL_DEVICETREE', 'DTS_BASE_NAME', 'TORADEX_FLASH_TYPE', 'KERNEL_DEVICETREE_FILES'}
Variable DATE value is 20190910
This suggest that do_image_teziimg depends on the date which differs.
As a result rootfs (build by do_image_tar) is not rebuilt as it is up-to-date, but do_image_teziimg needs to be rebuild because the DATE changed.
In meta/conf/bitbake.conf, the following pattern is used to remove the dependency on DATE:
IMAGE_ROOTFS = "${WORKDIR}/rootfs"
IMAGE_BASENAME = "${PN}"
IMAGE_NAME = "${IMAGE_BASENAME}-${MACHINE}-${DATETIME}"
IMAGE_NAME[vardepsexclude] += "DATETIME"
IMAGE_LINK_NAME = "${IMAGE_BASENAME}-${MACHINE}"
So my guess is that this is fixed by something like
IMAGE_CMD_teziimg[vardepsexclude] += "DATE"
That is what I am going to try tomorrow.