Hi all,
I added a new recipe for libudev-zero, which provides a minimal daemon-less
udev implementation. The recipe works, but has an issue that pops up regularly
where it causes an exception during rootfs:
Exception: FileNotFoundError: [Errno 2] No such file or directory:
'/ssd/opt/oe/yocto/kirkstone/build-weston/tmp-glibc/deploy/ipk/core2-64/libudev1_1.0.2-r1_core2-64.ipk'
->
'/ssd/opt/oe/yocto/kirkstone/build-weston/tmp-glibc/work/generic64-oe-linux/sollinux-ble-weston/1.0-r0/oe-rootfs-repo/core2-64/libudev1_1.0.2-r1_core2-64.ipk'
It seems like for some reason the ipk has been removed from deploy/ipk. To
recover from this, a 'bitbake -c clean libudev-zero' will restore things the
next time the rootfs is run.
Does anyone have an idea what could cause this? Appended below is the recipe,
and the full error message.
Cheers,
Rob
libudev-zero_1.0.2.bb:
DESCRIPTION = "Daemon-less libudev replacement"
SECTION = "base"
LICENSE="ISC"
LIC_FILES_CHKSUM = "file://LICENSE;md5=09eac32a84c5d70c105cbfce173a161d"
PR = "r1"
SRCREV = "04a727df50fde3f69127aed4bc48e6cff5430175"
SRC_URI = "git://github.com/illiliti/${BPN};branch=master;protocol=https"
SRC_URI[sha256sum] =
"29dff942cab9519994fb92ba6407f57e08d3dd6e6c0b86bb93d7b1d681994ff8"
PROVIDES = "udev"
inherit features_check
CONFLICT_DISTRO_FEATURES = "systemd"
S = "${WORKDIR}/git"
PACKAGES += "${PN}-netlink"
FILES:${PN} = "${libdir}"
FILES:${PN}-netlink = "${bindir}"
RPROVIDES:${PN} = "hotplug udev"
do_configure:prepend() {
sed -i 's;PREFIX = /usr/local;PREFIX = /usr;' ${S}/Makefile
}
do_compile:append() {
$CCLD $LDFLAGS -o contrib/netlink-forward contrib/helper.c
}
do_install() {
oe_runmake install DESTDIR=${D}
install -d ${D}${bindir}
install -m 755 contrib/netlink-forward ${D}${bindir}
}
Error message:
ERROR: sollinux-ble-weston-1.0-r0 do_rootfs: 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:do_rootfs(d)
0003:
File: '/opt/oe/yocto/kirkstone/oe-core/meta/classes/image.bbclass', lineno: 255,
function: do_rootfs
0251: progress_reporter.next_stage()
0252:
0253: # generate rootfs
0254: d.setVarFlag('REPRODUCIBLE_TIMESTAMP_ROOTFS', 'export', '1')
*** 0255: create_rootfs(d, progress_reporter=progress_reporter, logcatcher=l
ogcatcher)
0256:
0257: progress_reporter.finish()
0258:}
0259:do_rootfs[dirs] = "${TOPDIR}"
File: '/opt/oe/yocto/kirkstone/oe-core/meta/lib/oe/rootfs.py', lineno: 381, func
tion: create_rootfs
0377:
0378: img_type = d.getVar('IMAGE_PKGTYPE')
0379:
0380: cls = get_class_for_type(img_type)
*** 0381: cls(d, manifest_dir, progress_reporter, logcatcher).create()
0382: os.environ.clear()
0383: os.environ.update(env_bkp)
0384:
0385:
File: '/opt/oe/yocto/kirkstone/oe-core/meta/lib/oe/package_manager/ipk/rootfs.py
', lineno: 136, function: __init__
0132:
0133: self.inc_opkg_image_gen = self.d.getVar('INC_IPK_IMAGE_GEN') o
r ""
0134: if self._remove_old_rootfs():
0135: bb.utils.remove(self.image_rootfs, True)
*** 0136: self.pm = OpkgPM(d,
0137: self.image_rootfs,
0138: self.opkg_conf,
0139: self.pkg_archs)
0140: else:
File: '/opt/oe/yocto/kirkstone/oe-core/meta/lib/oe/package_manager/ipk/__init__.
py', lineno: 175, function: __init__
0171: self.opkg_args = "--volatile-cache -f %s -t %s -o %s " % (self
.config_file, self.d.expand('${T}/ipktemp/') ,target_rootfs)
0172: self.opkg_args += self.d.getVar("OPKG_ARGS")
0173:
0174: if prepare_index:
*** 0175: create_packages_dir(self.d, self.deploy_dir, d.getVar("DEP
LOY_DIR_IPK"), "package_write_ipk", filterbydependencies)
0176:
0177: self.opkg_dir = oe.path.join(target_rootfs, self.d.getVar('OPK
GLIBDIR'), "opkg")
0178: bb.utils.mkdirhier(self.opkg_dir)
0179:
File: '/opt/oe/yocto/kirkstone/oe-core/meta/lib/oe/package_manager/__init__.py',
lineno: 525, function: create_packages_dir
0521: if destdir not in seendirs:
0522: bb.utils.mkdirhier(destdir)
0523: seendirs.add(destdir)
0524: try:
*** 0525: os.link(l, dest)
0526: except OSError as err:
0527: if err.errno == errno.EXDEV:
0528: bb.utils.copyfile(l, dest)
0529: else:
Exception: FileNotFoundError: [Errno 2] No such file or directory:
'/ssd/opt/oe/yocto/kirkstone/build-weston/tmp-glibc/deploy/ipk/core2-64/libudev1_1.0.2-r1_core2-64.ipk'
->
'/ssd/opt/oe/yocto/kirkstone/build-weston/tmp-glibc/work/generic64-oe-linux/sollinux-ble-weston/1.0-r0/oe-rootfs-repo/core2-64/libudev1_1.0.2-r1_core2-64.ipk'
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#60777): https://lists.yoctoproject.org/g/yocto/message/60777
Mute This Topic: https://lists.yoctoproject.org/mt/100679184/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-