To reproduce: - set up a clean build directory (in particular, conf/sanity_info must not exist) - add ASSUME_PROVIDED += "libsdl-native" to local.conf - bitbake qemu-native It fails with: "libsdl-native is set to be ASSUME_PROVIDED but sdl-config can't be found in PATH. Please either install it, or configure qemu not to require sdl." The check in sanity.bbclass is out-dated and fails because sdl-config is not in HOSTTOOLS. It shouldn't be added there either, because that would affect all recipes and qemu.inc doesn't need it at all. From qemu.inc: do_configure_prepend_class-native() { # Append build host pkg-config paths for native target since the host may provide sdl BHOST_PKGCONFIG_PATH=$(PATH=/usr/bin:/bin pkg-config --variable pc_path pkg-config || echo "") if [ ! -z "$BHOST_PKGCONFIG_PATH" ]; then export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$BHOST_PKGCONFIG_PATH fi insanity.bbclass could use the host pkg-config to ensure that sdl.pc is installed.
Originally found by Jonathan Liu.
I've a patch that just deletes the check. Do we really need the extra check?
(In reply to comment #2) > I've a patch that just deletes the check. Do we really need the extra check? I'd be fine with simply removing it.
This is a periodically recurring problem, see for example: https://bugzilla.yoctoproject.org/show_bug.cgi?id=8553 https://bugzilla.yoctoproject.org/show_bug.cgi?id=7469 Basically, the order of libraries is important, this should fix it in local.conf: ASSUME_PROVIDED += "libsdl-native" BUILD_LDFLAGS_prepend_pn-qemu-native = "-Wl,-rpath-link,/lib/x86_64-linux-gnu "
Maybe the sanity check message can be simply updated to suggest adding the extra line BUILD_LDFLAGS_prepend_pn-qemu-native in local.conf...
Assuming this does fix it, can we have qemu-native do the right thing so that users don't have to insert this line into their configuration?
(In reply to comment #6) > Assuming this does fix it, can we have qemu-native do the right thing so > that users don't have to insert this line into their configuration? I would say yes, providing the recipe can somehow detect we specified ASSUME_PROVIDED += "libsdl-native
(In reply to comment #4) > This is a periodically recurring problem, see for example: > https://bugzilla.yoctoproject.org/show_bug.cgi?id=8553 > https://bugzilla.yoctoproject.org/show_bug.cgi?id=7469 Those are problems with building qemu-native. This issue here is about the sanity test and that it checks for SDL differently than qemu-native, so this not quite the same.
Turns out I'd already fixed this ages ago. Closed in oe-core a8d8b0d9e1c2346d5a314ed0a7bf5be66044a51d.