SYSTEMD_SERVICE_swupdate value swupdate.service does not exist - yocto

I am trying to build swupdate image by running bitbake swupdate-image but getting following errors,
ERROR: swupdate-2019.04-r0 do_package: SYSTEMD_SERVICE_swupdate value swupdate.service does not exist
ERROR: swupdate-2019.04-r0 do_package:
ERROR: swupdate-2019.04-r0 do_package: Function failed: systemd_populate_packages
ERROR: Logfile of failure stored in: /home/panther2/warrior/build/tmp/work/corei7-64-poky-linux/swupdate/2019.04-r0/temp/log.do_package.22017
ERROR: Task (/home/panther2/warrior/sources/meta-swupdate/recipes-support/swupdate/swupdate_2019.04.bb:do_package) failed with exit code '1'
I am building for warrior yocto branch. Error indicates that swupdate.service does not exist but swupdate.service does exist under meta-swupdate/recipes-support/swupdate/swupdate. Any help is really appreciated. Thanks for your time.

swupdate-image is a rescue system - it generates a Ramdisk. Care was taken about footprint - it runs then with SystemV and not with systemd. If you want to buid swupdate-image with systemd as init, add your own swupdate-image.bbappend and rearrange the list of packages.

Related

Yocto Realsense Building

I'm trying to build a Yocto Hardknott image with Realsense layer for IMX8MP board (Hummingboard Mate). I have received this error:
ERROR: librealsense2-2.44.0-r0 do_package: QA Issue: librealsense2:
Files/directories were installed but not shipped in any package:
/home /home/ubuntu /home/ubuntu/Documents
/home/ubuntu/Documents/librealsense2
/home/ubuntu/Documents/librealsense2/presets
/home/ubuntu/Documents/librealsense2/presets/L535 Max Range.preset
/home/ubuntu/Documents/librealsense2/presets/L535 Max Range With
Binning.preset /home/ubuntu/Documents/librealsense2/presets/L535
Medium Range.preset
/home/ubuntu/Documents/librealsense2/presets/L535 Min Range.preset
/usr/bin/rs-embed Please set FILES such that these items are packaged.
Alternatively if they are unneeded, avoid installing them or delete
them within do_install. librealsense2: 10 installed and not shipped
files. [installed-vs-shipped] ERROR: librealsense2-2.44.0-r0
do_package: Fatal QA errors found, failing task. ERROR: Logfile of
failure stored in:
/home/ubuntu/yocto_hardknott_realsense/build-xwayland-imx8mpsolidrun/tmp/work/cortexa53-crypto-poky-linux/librealsense2/2.44.0-r0/temp/log.do_package.110367
ERROR: Task
(/home/ubuntu/yocto_hardknott_realsense/sources/meta-intel-realsense/recipes-support/librealsense/librealsense2_2.44.0.bb:do_package)
failed with exit code '1'
I have used this solution:
FILES_${PN} += "${home}/*"
FILES_${PN}-dev = "${home}/* ${includedir}"
from this thread:
Yocto - Files/directories were installed but not shipped in any package
But the error is bigger:
ERROR: librealsense2-2.44.0-r0 do_package: QA Issue: librealsense2:
Files/directories were installed but not shipped in any package:
/home /home/ubuntu /home/ubuntu/Documents
/home/ubuntu/Documents/librealsense2
/home/ubuntu/Documents/librealsense2/presets
/home/ubuntu/Documents/librealsense2/presets/L535 Max Range.preset
/home/ubuntu/Documents/librealsense2/presets/L535 Max Range With
Binning.preset /home/ubuntu/Documents/librealsense2/presets/L535
Medium Range.preset
/home/ubuntu/Documents/librealsense2/presets/L535 Min Range.preset
/usr/lib/librealsense2.so /usr/lib/librealsense2-gl.so
/usr/lib/pkgconfig /usr/lib/cmake /usr/lib/pkgconfig/realsense2.pc
/usr/lib/pkgconfig/realsense2-gl.pc /usr/lib/cmake/realsense2
/usr/lib/cmake/realsense2-gl
/usr/lib/cmake/realsense2/realsense2ConfigVersion.cmake
/usr/lib/cmake/realsense2/realsense2Targets-noconfig.cmake
/usr/lib/cmake/realsense2/realsense2Targets.cmake
/usr/lib/cmake/realsense2/realsense2Config.cmake
/usr/lib/cmake/realsense2-gl/realsense2-glConfigVersion.cmake
/usr/lib/cmake/realsense2-gl/realsense2-glTargets.cmake
/usr/lib/cmake/realsense2-gl/realsense2-glConfig.cmake
/usr/lib/cmake/realsense2-gl/realsense2-glTargets-noconfig.cmake
/usr/bin/rs-embed Please set FILES such that these items are packaged.
Alternatively if they are unneeded, avoid installing them or delete
them within do_install. librealsense2: 26 installed and not shipped
files. [installed-vs-shipped] ERROR: librealsense2-2.44.0-r0
do_package: Fatal QA errors found, failing task. ERROR: Logfile of
failure stored in:
/home/ubuntu/yocto_hardknott_realsense/build-xwayland-imx8mpsolidrun/tmp/work/cortexa53-crypto-poky-linux/librealsense2/2.44.0-r0/temp/log.do_package.128195
ERROR: Task
(/home/ubuntu/yocto_hardknott_realsense/sources/meta-intel-realsense/recipes-support/librealsense/librealsense2_2.44.0.bb:do_package)
failed with exit code '1'
Where is the problem of this?
Thank you so much.
EDIT:
For this case:
FILES_${PN} += "$/home/* /usr/*"
Adding this line solves the error, my mistake, I didn't understand the command.
For this case:
FILES_${PN} += "$/home/* /usr/*"
Adding this line solves the error, my mistake, I didn't understand the command.

Operator-SDK Error, "CRD is present in bundle but not defined in CSV"

I get the error "CRD is present in bundle but not defined in CSV" when I run make bundle.
The full output is
/Users/foobar/Documents/my-operator/bin/controller-gen "crd:trivialVersions=true,preserveUnknownFields=false" rbac:roleName=manager-role webhook paths="./..." output:crd:artifacts:config=config/crd/bases
operator-sdk generate kustomize manifests -q
cd config/manager && /Users/foobar/Documents/my-operator/bin/kustomize edit set image controller=registry.io/my-operator:latest
/Users/foobar/Documents/my-operator/bin/kustomize build config/manifests | operator-sdk generate bundle -q --overwrite --version 0.0.5
Error: accumulating resources: 2 errors occurred:
* accumulateFile error: "accumulating resources from '../samples': '/Users/foobar/Documents/my-operator/config/samples' must resolve to a file"
* accumulateDirector error: "recursed accumulation of path '/Users/foobar/Documents/my-operator/config/samples': accumulating resources: 2 errors occurred:\n\t* accumulateFile error: \"accumulating resources from 'myapplicationui.yaml': evalsymlink failure on '/Users/foobar/Documents/my-operator/config/samples/myapplicationui.yaml' : lstat /Users/foobar/Documents/my-operator/config/samples/myapplicationui.yaml: no such file or directory\"\n\t* loader.New error: \"error loading myapplicationui.yaml with git: url lacks orgRepo: myapplicationui.yaml, dir: evalsymlink failure on '/Users/foobar/Documents/my-operator/config/samples/myapplicationui.yaml' : lstat /Users/foobar/Documents/my-operator/config/samples/myapplicationui.yaml: no such file or directory, get: invalid source string: myapplicationui.yaml\"\n\n"
INFO[0000] Building annotations.yaml
INFO[0000] Writing annotations.yaml in /Users/foobar/Documents/my-operator/bundle/metadata
INFO[0000] Building Dockerfile
INFO[0000] Writing bundle.Dockerfile in /Users/foobar/Documents/my-operator
operator-sdk bundle validate ./bundle
INFO[0000] Found annotations file bundle-dir=bundle container-tool=docker
INFO[0000] Could not find optional dependencies file bundle-dir=bundle container-tool=docker
ERRO[0000] Error: Value myapplication.example.com/v1alpha1, Kind=MyApplication: CRD "myapplication.example.com/v1alpha1, Kind=MyApplication" is present in bundle "my-operator.v0.0.5" but not defined in CSV
ERRO[0000] Error: Value myapplication.example.com/v1alpha1, Kind=MyApplicationUI: CRD "myapplication.example.com/v1alpha1, Kind=MyApplicationUI" is present in bundle "my-operator.v0.0.5" but not defined in CSV
What is the cause of this error?
The error on the bottom is a red herring. The actual error is further up and uncolored when you experience it in person.
Specifically, a Kustomize yaml is expecting an myapplicationui.yaml but can't find it.
This can easily happen when someone in your team attempts to rename files (e.g. to myapplicationui_sample.yaml) without checking all of the references.

How to solve Taskhash mismatch and metadata is not deterministic in Yocto project build?

I am facing "Taskhash mismatch" & "The metadata is not deterministic and this needs to be fixed" error in Yocto project build. This issue arises without any obvious reasons. With a perfectly good source code repo, the build is success sometime, while it fails some time. There is no change in source code/recipe or any other build parameters.
Error log:
ERROR: When reparsing /home/user/my_project/yocto/sub_project-yocto/meta-subproject/meta-base/recipes-core/sub_project-rootfs-base/sub_project-rootfs-base.bb:do_populate_lic, the basehash value changed from e0bfa2ad64f24d189d23f9d84918c74a7253e0d7e9c7fea4e3346cbc473d43da to c108c533ec82c43aa15730e4ca9c9838f87133e63417f40af0de8ca8cb43f51a. The metadata is not deterministic and this needs to be fixed.
ERROR: The following commands may help:
ERROR: $ bitbake sub_project-rootfs-base -cdo_populate_lic -Snone
ERROR: Then:
ERROR: $ bitbake sub_project-rootfs-base -cdo_populate_lic -Sprintdiff
ERROR: sub_project-rootfs-base-1.0+gitAUTOINC+db239d9f5b-r2 do_package_qa: Taskhash mismatch 87d8616452c2be01481a9034e9147f0270a57a3f64f85cde65076863b8123c7c versus 9a7fd3b27e62140001d77ab75dbc2026dac8e6c8ca93a487b1857a76f2b6b2yy for /home/user/my_project/yocto/sub_project-yocto/meta-subproject/meta-base/recipes-core/sub_project-rootfs-base/sub_project-rootfs-base.bb:do_package_qa
ERROR: Taskhash mismatch 87d8616452c2be01481a9034e9147f0270a57a3f64f85cde65076863b8123c7c versus 9a7fd3b27e62140001d77ab75dbc2026dac8e6c8ca93a487b1857a76f2b6b2yy for /home/user/my_project/yocto/sub_project-yocto/meta-subproject/meta-base/recipes-core/sub_project-rootfs-base/sub_project-rootfs-base.bb:do_package_qa
ERROR: sub_project-rootfs-base-1.0+gitAUTOINC+db239d9f5b-r2 do_package_write_rpm: Taskhash mismatch 9a7fd3b27e62140001d77ab75dbc2026dac88qc8ca93a487b1857a76f2b6b2yy versus 9a7fd3b27e6217l0001d77ab75dbc2026dac8e6c8ca93a487b1857a76f2b6b2yy for /home/user/my_project/yocto/sub_project-yocto/meta-subproject/meta-base/recipes-core/sub_project-rootfs-base/sub_project-rootfs-base.bb:do_package_write_rpm
ERROR: Taskhash mismatch 9a7fd3b27e62140001d77ab75dbc2026dac88qc8ca93a487b1857a76f2b6b2yy versus 9a7fd3b27e6217l0001d77ab75dbc2026dac8e6c8ca93a487b1857a76f2b6b2yy for /home/user/my_project/yocto/sub_project-yocto/meta-subproject/meta-base/recipes-core/sub_project-rootfs-base/sub_project-rootfs-base.bb:do_package_write_rpm
I resolved this issue by doing two of the following action.
Clean the recipe which throws error during build using following command
bitbake -c cleansstate sub_project-rootfs-base
Update the bb file timestamp by doing empty write or by touching file.
Open the bb file using your editor - vim /home/user/my_project/yocto/sub_project-yocto/meta-subproject/meta-base/recipes-core/sub_project-rootfs-base/sub_project-rootfs-base.bb
Write the file by clicking save button or in vim writing ":w" command
Close the file using "x" button or ":q" command.
Rebuild the project as usual.
Edit : In case there are multiple bitbake recipes showing this error, you can touch all bb files and build again. Go into your yocto folder and run following command. This will take some to touch all file and significantly higher time to rebuild the project.
find . -type f -name "*.bb" -exec touch {} +

Yocto minimal image failed

I am trying to build "core-image-minimal" in centos 7.
How to fix this error.
bitbake core-image-minimal
fatal: repository '/my_data/yocto/poky/build/downloads/git2/git.yoctoproject.org.linux-yocto.git/' does not exist
ERROR: linux-yocto-4.18.21+gitAUTOINC+8f4a98c938_9eddc793f9-r0 do_unpack: Function failed: base_do_unpack
ERROR: Logfile of failure stored in: /my_data/yocto/poky/build/tmp/work/qemux86-poky-linux/linux-yocto/4.18.21+gitAUTOINC+8f4a98c938_9eddc793f9-r0/temp/log.do_unpack.22789
ERROR: Task (/my_data/yocto/poky/meta/recipes-kernel/linux/linux-yocto_4.18.bb:do_unpack) failed with exit code '1'
Removing the tmp/ dir and building from scratch again works for me.

Failed do_rootfs for agl-demo-platform

I am building Yocto for AGL image (for more details: automotivelinux.org).
The below error occurred during the build progress (do_rootfs).
In packagegroup-agl-demo-platform.bb, declared packagegroup-agl-image-ivi as a runtime dependent package.
RDEPENDS_${PN} += "\
packagegroup-agl-image-ivi \
"
I can build successfully the packagegroup-agl-image-ivi separately. But when building the whole agl-demo-platform image, happened as follows:
ERROR: agl-demo-platform-1.0-r0 do_rootfs: Unable to install packages. Command '/LTSI4.9/LTSI4.4/build/tmp/work/m3ulcb-agl-linux/agl-demo-platform/1.0-r0/opkg.conf -t /LTSI4.9/build/tmp/work/m3ulcb-agl-linux/agl-demo-platform/1.0-r0/temp/ipktemp/ -o /LTSI4.9/build/tmp/work/m3ulcb-agl-linux/agl-demo-platform/1.0-r0/rootfs --force_postinstall --prefer-arch-to-version install
run-postinsts
screen
kernel-modules
packagegroup-agl-devel
packagegroup-core-eclipse-debug
mc packagegroup-core-tools-profile
kernel-module-vsp2 kernel-module-pvrsrvkm
kernel-module-vspm-if
opkg packagegroup-core-tools-debug
psplash kernel-module-vspm
packagegroup-core-ssh-openssh
packagegroup-agl-demo-platform
omx-user-module kernel-devicetree'
returned 1:
Solver encountered 1 problem(s):
Problem 1/1:
- package packagegroup-agl-demo-platform-1.0-r0.all requires packagegroup-agl-image-ivi, but none of the providers can be installed
Solution 1:
- do not ask to install a package providing packagegroup-agl-demo-platform
ERROR: agl-demo-platform-1.0-r0 do_rootfs: Function failed: do_rootfs
ERROR: Logfile of failure stored in: /LTSI4.9/build/tmp/work/m3ulcb-agl-linux/agl-demo-platform/1.0-r0/temp/log.do_rootfs.14498
ERROR: Task (/LTSI4.9/meta-agl-demo/recipes-platform/images/agl-demo-platform.bb:do_rootfs) failed with exit code '1'
Can anyone help me out in this case ?
I tried 02 ways as follows. They did work.
First method, I cleaned all relative packages and rebuild the whole image.
$ bitbake -c cleanall -c cleansstate <recipes>
recipes consisted of all dependent & runtime dependent packages. But it was a little bit confused to inexperienced users to determine which ones.
Second method, I wiped out the build/tmp/, cache/, sstate-cache/ folders, and re-build all Yocto packages.
There were nothing happening any more. It was really a bad idea if be in critical period of time, but if have free time, be helpful.