On 09/29/2017 11:38 AM, jef.drie...@niko.eu wrote: >> For our system, we are using some custom initscripts. Because of >> that, some files conflict with the initscripts package, and thus the >> initscript package gets removed from our build. But when trying to >> build an sdk, somehow the initscripts-dev package gets pulled in, and >> since that has an automatic dependency on initscripts, our build >> fails. > > Please do find out why this happens; that's what you really need to fix.
I tried, but I couldn't figure out where this came from. >> I've been trying to find out why this happens, but without much >> success so far. But I did found a simple workaround: remove the >> initscripts-dev package completely. Since the initscripts recipe >> contains some shell scripts the initscript-dev is empty anyway. >> >> I've fixed this locally with a bbappend, but this is probably >> something that can be applied upstream. > > You can use bbappend to instead replace the standard files with the ones > that you want installed. Or you can add PROVIDES = "initscripts" to your > recipe with the 'custom' initscripts, and set > PREFERRED_PROVIDER_initscripts = "my-custom-initscripts" to have that > installed. Those custom initscripts are not in our own layer. It's in a layer we build upon. So it's a bit more complex. Anyway, what we have there is the following. In the machine conf file there is: VIRTUAL-RUNTIME_initscripts = "" This replaces the default meta/recipes-core/packagegroups/packagegroup-core-boot.bb: VIRTUAL-RUNTIME_initscripts ?= "initscripts" So I assume that's how they remove the initscripts package. And then in the image recipe they have: PACKAGE_EXCLUDE += "initscripts-dev" But for some reason this doesn't work for us. It fails with this error: ERROR: Unable to install packages. Command '/home/bob/nhc2/yocto/build/tmp/sysroots/x86_64-linux/usr/bin/smart --log-level=warning --data-dir=/home/bob/nhc2/yocto/build/tmp/work/emperor-poky-linux-gnueabi/image-sdk-niko/1.0-r0/sdk/image/opt/yotta/2.0.3/sysroots/armv7a-vfp-neon-poky-linux-gnueabi/var/lib/smart install --attempt -y initscripts-dbg@armv7a_vfp_neon initscripts-dev@armv7a_vfp_neon ...' returned 1: Loading cache... Updating cache... ######################################## [100% Computing transaction...warning: Can't install initscripts-dev-1.0-r155.0@armv7a_vfp_neon: it's locked Traceback (most recent call last): File "/home/bob/nhc2/yocto/build/tmp/sysroots/x86_64-linux/usr/bin/smart.real", line 200, in <module> main(sys.argv[1:]) File "/home/bob/nhc2/yocto/build/tmp/sysroots/x86_64-linux/usr/bin/smart.real", line 173, in main exitcode = iface.run(opts.command, opts.argv) File "/home/bob/nhc2/yocto/build/tmp/sysroots/x86_64-linux/usr/lib/python2.7/site-packages/smart/interface.py", line 53, in run result = _command.main(self._ctrl, opts) File "/home/bob/nhc2/yocto/build/tmp/sysroots/x86_64-linux/usr/lib/python2.7/site-packages/smart/commands/install.py", line 192, in main trans.run() File "/home/bob/nhc2/yocto/build/tmp/sysroots/x86_64-linux/usr/lib/python2.7/site-packages/smart/transaction.py", line 1235, in run del changeset[pkg] KeyError: initscripts-dev-1.0-r155.0@armv7a_vfp_neon DEBUG: Python function do_populate_sdk finished ERROR: Function failed: do_populate_sdk I'm not even sure whether PACKAGE_EXCLUDE is supposed to be used from an image recipe, because the documentation refers to local.conf. So that might explain why it doesn't work. Jef Disclaimer This e-mail and its attachments is intended only for the person(s) or entity to which it is addressed. If you receive this e-mail by mistake, please delete this e-mail from your system and destroy all copies of it. It may contain confidential and/or privileged information. You should not copy it or use it for any purpose nor disclose its contents to any person unless allowed by a written document between the sender and the addressee. -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core