[yocto] qemu-native build fails on sumo due to missing capstone.h

Jon Szymaniak jon.szymaniak at gmail.com
Thu May 31 23:00:28 PDT 2018


When attempting to build core-image-minimal on sumo (@b369e61) with a
largely default local.conf, I'm experiencing qemu-native build failures due
to what appear to be an include path issue.

Below is one of the failures -- those not listed here also pertain to a
missing capstone.h.

|   CC      aarch64-softmmu/monitor.o
| In file included from /snip/build/yocto/sumo/rpi/tmp
/work/x86_64-linux/qemu-native/2.11.1-r0/qemu-2.11.1/disas.c:9:0:

| /snip/build/yocto/sumo/rpi/tmp/work/x86_64-linux/qemu-native
/2.11.1-r0/qemu-2.11.1/include/disas/capstone.h:6:10: fatal error:
capstone.h: No such file or directory
|  #include <capstone.h>
|           ^~~~~~~~~~~~
| compilation terminated.

In the qemu-native build directory, the config.log shows an "
 -I/usr/include/capstone" parameter being used during compilation, despite
other -I parameters using ${prefix} correctly.

capstone is pulled into the qemu source tree as a git submodule, and has a
CMake-based build -- so I'm guessing this is the result of not providing
prefix information to the CMake build? However, I'm honestly not sure why
there's a dependency on the capstone disassembler at this point, and
whether the Yocto use-case warrants even enabling support for it.

Adding --disable-capstone to the qemu.inc EXTRA_OECONF definition seemed to
address the build failure, but I haven't tried any QEMU targets yet.

I still need to dig into this a bit further, but just wanted to check in
before I go too far down the rabbit hole... this strikes me as something
that would have broken the nightly builds and therefore might just be an
issue on my end somehow.

Thanks,
Jon Szymaniak
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20180601/95d7335c/attachment.html>


More information about the yocto mailing list