(see below)

Met vriendelijke groet / kind regards,

Mike Looijmans
System Expert


TOPIC Embedded Products B.V.
Materiaalweg 4, 5681 RJ Best
The Netherlands

T: +31 (0) 499 33 69 69
E: [email protected]
W: www.topic.nl

Please consider the environment before printing this e-mail
On 03-04-2023 17:20, Mark Hatle wrote:


On 4/3/23 9:30 AM, Mike Looijmans wrote:
I get this error while building the langdale branch:

ERROR: qemu-xilinx-native-v6.1.0-xilinx-v2022.2+gitAUTOINC+74d70f8008-r0 do_configure: ExecutionError('/...langdale/build/tmp-glibc/work/x86_64-linux/qemu-xilinx-native/v6.1.0-xilinx-v2022.2+gitAUTOINC+74d70f8008-r0/temp/run.do_configure.3159', 1, None, None) ERROR: Logfile of failure stored in: /...langdale/build/tmp-glibc/work/x86_64-linux/qemu-xilinx-native/v6.1.0-xilinx-v2022.2+gitAUTOINC+74d70f8008-r0/temp/log.do_configure.3159
...
| DEBUG: Python function extend_recipe_sysroot finished
| DEBUG: Executing shell function do_configure
| ERROR: unknown option --disable-png


I don't thing QEMU is really required for anything, so reducing the dependency would solve that issue for me nicely...

You absolutely need a qemu.  You don't need the _XILINX_ qemu, but disabling it will disable board emulation, and runqemu won't boot.  If this is fine, then switching to the Yocto Project QEMU should be fine.

(You can't build some programs, or create the rootfs with qemu emulation on ARM platforms.)

The dependency should not be enforced from the machine config. Current configuration files force QEMU to be built regardless of whether it will be used. In most (if not all) of my builds, it's not required.



Not tried it in a while, but the following SHOULD work:

PREFERRED_PROVIDER_qemu-helper-native:forcevariable = "qemu-xilinx-helper-native"
PREFERRED_PROVIDER_qemu:forcevariable = "qemu"
PREFERRED_PROVIDER_qemu-native:forcevariable = "qemu-native"
PREFERRED_PROVIDER_qemu-system-native:forcevariable = "qemu-system-native"
PREFERRED_PROVIDER_nativesdk-qemu:forcevariable = "nativesdk-qemu"

I had to put this in my machine.conf to make the QEMU problems go away:

IMAGE_CLASSES:remove = "image-types-xilinx-qemu"
IMAGE_FSTYPES:remove = "wic.qemu-sd"
EXTRA_IMAGEDEPENDS:remove = "qemu-system-native qemu-helper-native:do_addto_recipe_sysroot"
PREFERRED_PROVIDER_qemu = "qemu"
PREFERRED_PROVIDER_qemu-native = "qemu-native"
PREFERRED_PROVIDER_qemu-system-native = "qemu-system-native"
PREFERRED_PROVIDER_nativesdk-qemu = "nativesdk-qemu"

Problem is that ":append" is being used to add dependencies, and that makes it almost impossible to get rid of them, since changing the variable will happen before the :append is applied, and even machine-specific setting doesn't work. Only way around it is to use a ":remove", which is equally evil as there's no way to get something back in once it's been :removed.

It's be very helpful if the Xilinx recipes used this pattern (using IMAGE_CLASSES as an example):

IMAGE_CLASSES_XILINX = "image-types-xilinx-qemu"

IMAGE_CLASSES:append = "${IMAGE_CLASSES_XILINX}"


That way, if a machine want to change or remove that, it can simply do this:

IMAGE_CLASSES_XILINX = ""



As for the --disable-png, I suspect langdale updated and we've not caught up yet.  (qemu-xilinx is uses Yocto Project QEMU for a basis of it's implementation.)  I'm not sure why --disable-png wouldn't be supported in the Xilinx qemu -- but I've not yet looked at that.  I'm working on a qemu update, but won't be able to release it for a bit still.

You can try:

PACKAGECONFIG:remove:pn-qemu-xilinx-native = "png"
PACKAGECONFIG:remove:pn-qemu-xilinx = "png"


Doesn't work - it will pass either --disable-png or --enable-png to the configure script, both are unsupported.


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#5190): 
https://lists.yoctoproject.org/g/meta-xilinx/message/5190
Mute This Topic: https://lists.yoctoproject.org/mt/96386630/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/meta-xilinx/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to