From: Rob Kramer <rob@teegee.cloud>
To: Alexander Kanavin <alex.kanavin@gmail.com>
Cc: yocto@lists.yoctoproject.org
Subject: Re: [yocto] libudev-zero recipe issue
Date: Tue, 15 Aug 2023 12:23:25 +0800 [thread overview]
Message-ID: <5f03d563-9358-9cc2-af9e-4920ef26d508@teegee.cloud> (raw)
In-Reply-To: <CANNYZj-9Pey+OO_YmjK77LL_qE7c-vzgYKN3YjiV9qQWD346Zw@mail.gmail.com>
I wiped the whole build, and the issue hasn't happened again since.
Hopefully it was just bitbake being in a funny state.. If it happens
again, I'll create a separate minimal poky build to test.
Thanks!
Rob
On 11/8/23 19:54, Alexander Kanavin wrote:
> The recipe looks ok. Can you reproduce it with a plain poky build (no
> extra layers, no custom distros, no weird BSPs :) ?
>
> Alex
>
> On Fri, 11 Aug 2023 at 08:38, Rob Kramer <rob@teegee.cloud> wrote:
>> 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 (#60782): https://lists.yoctoproject.org/g/yocto/message/60782
>> Mute This Topic: https://lists.yoctoproject.org/mt/100679184/7790876
>> Group Owner: yocto+owner@lists.yoctoproject.org
>> Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub [rob@teegee.cloud]
>> -=-=-=-=-=-=-=-=-=-=-=-
>>
prev parent reply other threads:[~2023-08-15 4:23 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-11 6:38 libudev-zero recipe issue Rob Kramer
2023-08-11 11:54 ` [yocto] " Alexander Kanavin
2023-08-15 4:23 ` Rob Kramer [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5f03d563-9358-9cc2-af9e-4920ef26d508@teegee.cloud \
--to=rob@teegee.cloud \
--cc=alex.kanavin@gmail.com \
--cc=yocto@lists.yoctoproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox