QRB5165 Kernel Build Docker - how (or possible) to build sysroot and sdk
-
Machine: M0104 (VOXL2 Mini)
Distro: qti-distro-ubuntu-fullstack-perf
Tag: v1.8.02 (SDK 1.4.0)Git Branch: qrb5165-ubun1.0-14.1a
Hello,
I was wondering how (or if its possible with the kernel build docker) to generate a sysroot and SDK via bitbake.
I have some kernel modules that are built (adding in our own meta-layer), and are currently manually installing them.
I know we can just package these up into .debs and deploy them by tacking onto the flash process used by a VOXL SDK package. But, it would be nice to be able to generate a sysroot with that bundled therein.
The Kernel Build docker very specifically calls bitbake qti-ubuntu-robotics-image -fc do_make_bootimg, which just creates the bootable .img file, without a sysroot.Trying to do other tasks generally results in some build errors:
bitbake qti-ubuntu-robotics-image (to attempt to just build everything) fails on edk2 needing clang under the hood, which is not part of the docker.bitbake qti-ubuntu-robotics-image -c do_makesystem fails with:
WARNING: libcutils-git-r1 do_package_qa: QA Issue: libcutils rdepends on mv-voxl, but it isn't a build dependency, missing mv in DEPENDS or PACKAGECONFIG? [build-deps]
ERROR: libcutils-git-r1 do_package_qa: QA Issue: /usr/lib/libcutils.so.0.0.0 contained in package libcutils requires liblog.so.0()(64bit), but no providers found in RDEPENDS_libcutils? [file-rdeps]
ERROR: libcutils-git-r1 do_package_qa: QA run found fatal errors. Please consider fixing them.
ERROR: libcutils-git-r1 do_package_qa: Function failed: do_package_qabitbake qti-ubuntu-robotics-image -c do_populate_sdk fails with:
e2fsprogs: 49 installed and not shipped files. [installed-vs-shipped]
ERROR: nativesdk-libarchive-3.3.3-r0 do_configure: Function failed: do_configure (log file is located at /home/user/build_mount/lu.um.1.2.1/apps_proc/build-qti-distro-ubuntu-fullstack-perf/tmp-glibc/work/x86_64-nativesdk-oesdk-linux/nativesdk-libarchive/3.3.3-r0/temp/log.do_configure.1439096)
ERROR: Logfile of failure stored in: /home/user/build_mount/lu.um.1.2.1/apps_proc/build-qti-distro-ubuntu-fullstack-perf/tmp-glibc/work/x86_64-nativesdk-oesdk-linux/nativesdk-libarchive/3.3.3-r0/temp/log.do_configure.1439096
...
cp: cannot stat '/home/user/build_mount/lu.um.1.2.1/apps_proc/build-qti-distro-ubuntu-fullstack-perf/tmp-glibc/work/x86_64-nativesdk-oesdk-linux/nativesdk-libarchive/3.3.3-r0/recipe-sysroot-native/usr/include/ext2fs': No such file or directoryBefore getting too in the weeds I wanted to ask how you generate these and if you use the Kernel Build Docker or some other environment.
My understanding of the various tasks may be incorrect as well. My experience has been mostly with Petalinux so this is a bit of a different lens to look through - apologies if I missed obvious things.Let me know if I can clarify anything.
Thanks