Hi,

I am a newbie to QEMU and trying to build the virtual-device fuzzer
according to qemu/docs/devel/fuzzing.txt, which says:

---
Configure with (substitute the clang binaries with the version you
installed).
...
    CC=clang-8 CXX=clang++-8 /path/to/configure --enable-fuzzing \
                                                --enable-sanitizers
Fuzz targets are built similarly to system/softmmu:
    make i386-softmmu/fuzz
This builds ./i386-softmmu/qemu-fuzz-i386
---

But when I did this on my Ubuntu 20.04 x86-64 with qemu-5.2.0-rc0
release code, the make complained it could not find the target:

---
root@iZj6canc2b2vgdozetp9foZ:~/qemu# CC=clang-10 CXX=clang++-10
./configure --enable-fuzzing --enable-sanitizers > configure.log
root@iZj6canc2b2vgdozetp9foZ:~/qemu# make i386-softmmu/fuzz
changing dir to build for make "i386-softmmu/fuzz"...
make[1]: Entering directory '/root/qemu/build'
/usr/bin/ninja  build.ninja && touch build.ninja.stamp
ninja: no work to do.
/usr/bin/python3 -B /root/qemu/meson/meson.py introspect --targets --
tests --benchmarks | /usr/bin/python3 -B scripts/mtest2make.py >
Makefile.mtest
make[1]: *** No rule to make target 'i386-softmmu/fuzz'.  Stop.
make[1]: Leaving directory '/root/qemu/build'
make: *** [GNUmakefile:11: i386-softmmu/fuzz] Error 2
---

Did I missed something or misunderstood the instructions?
Thanks.
Using './build' as the directory for build output
cross containers  no

NOTE: guest cross-compilers enabled: cc cc
The Meson build system
Version: 0.55.3
Source dir: /root/qemu
Build dir: /root/qemu/build
Build type: native build
Project name: qemu
Project version: 5.1.90
C compiler for the host machine: clang-10 (clang 10.0.0-4ubuntu1 "clang version 10.0.0-4ubuntu1 ")
C linker for the host machine: clang-10 ld.bfd 2.34
Host machine cpu family: x86_64
Host machine cpu: x86_64
../meson.build:10: WARNING: Module unstable-keyval has no backwards or forwards compatibility and might not exist in future releases.
Program sh found: YES
Program python3 found: YES (/usr/bin/python3)
../meson.build:99: WARNING: Consider using the built-in option for sanitizers instead of using "-fsanitize=undefined".
../meson.build:99: WARNING: Consider using the built-in option for sanitizers instead of using "-fsanitize=address".
../meson.build:99: WARNING: Consider using the built-in option for sanitizers instead of using "-fsanitize=fuzzer-no-link".
../meson.build:101: WARNING: Consider using the built-in option for sanitizers instead of using "-fsanitize=undefined".
../meson.build:101: WARNING: Consider using the built-in option for sanitizers instead of using "-fsanitize=address".
../meson.build:103: WARNING: Consider using the built-in option for sanitizers instead of using "-fsanitize=undefined".
../meson.build:103: WARNING: Consider using the built-in option for sanitizers instead of using "-fsanitize=address".
C++ compiler for the host machine: clang++-10 (clang 10.0.0-4ubuntu1 "clang version 10.0.0-4ubuntu1 ")
C++ linker for the host machine: clang++-10 ld.bfd 2.34
Program cgcc found: NO
Library m found: YES
Library util found: YES
Run-time dependency appleframeworks found: NO (tried framework)
Found pkg-config: /usr/bin/pkg-config (0.29.1)
Run-time dependency pixman-1 found: YES 0.38.4
Library aio found: NO
Run-time dependency zlib found: YES 1.2.11
Run-time dependency xkbcommon found: NO (tried pkgconfig)
Library rt found: YES
Did not find CMake 'cmake'
Found CMake: NO
Run-time dependency libudev found: NO (tried pkgconfig and cmake)
Library mpathpersist found: NO
Run-time dependency ncursesw found: YES 6.2.20200212
sdl2-config found: NO
Run-time dependency sdl2 found: NO (tried pkgconfig and config-tool)
Run-time dependency libpng found: NO (tried pkgconfig)
Has header "jpeglib.h" : NO 
Has header "sasl/sasl.h" : NO 
Run-time dependency u2f-emu found: NO (tried pkgconfig)
Run-time dependency libkeyutils found: NO (tried pkgconfig)
Checking for function "gettid" : YES 
Program scripts/minikconf.py found: YES
Configuring aarch64-softmmu-config-target.h using configuration
Configuring aarch64-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/aarch64-softmmu-config-devices.mak.d
Configuring aarch64-softmmu-config-devices.h using configuration
Configuring alpha-softmmu-config-target.h using configuration
Configuring alpha-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/alpha-softmmu-config-devices.mak.d
Configuring alpha-softmmu-config-devices.h using configuration
Configuring arm-softmmu-config-target.h using configuration
Configuring arm-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/arm-softmmu-config-devices.mak.d
Configuring arm-softmmu-config-devices.h using configuration
Configuring avr-softmmu-config-target.h using configuration
Configuring avr-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/avr-softmmu-config-devices.mak.d
Configuring avr-softmmu-config-devices.h using configuration
Configuring cris-softmmu-config-target.h using configuration
Configuring cris-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/cris-softmmu-config-devices.mak.d
Configuring cris-softmmu-config-devices.h using configuration
Configuring hppa-softmmu-config-target.h using configuration
Configuring hppa-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/hppa-softmmu-config-devices.mak.d
Configuring hppa-softmmu-config-devices.h using configuration
Configuring i386-softmmu-config-target.h using configuration
Configuring i386-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/i386-softmmu-config-devices.mak.d
Configuring i386-softmmu-config-devices.h using configuration
Configuring m68k-softmmu-config-target.h using configuration
Configuring m68k-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/m68k-softmmu-config-devices.mak.d
Configuring m68k-softmmu-config-devices.h using configuration
Configuring microblaze-softmmu-config-target.h using configuration
Configuring microblaze-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/microblaze-softmmu-config-devices.mak.d
Configuring microblaze-softmmu-config-devices.h using configuration
Configuring microblazeel-softmmu-config-target.h using configuration
Configuring microblazeel-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/microblazeel-softmmu-config-devices.mak.d
Configuring microblazeel-softmmu-config-devices.h using configuration
Configuring mips-softmmu-config-target.h using configuration
Configuring mips-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/mips-softmmu-config-devices.mak.d
Configuring mips-softmmu-config-devices.h using configuration
Configuring mips64-softmmu-config-target.h using configuration
Configuring mips64-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/mips64-softmmu-config-devices.mak.d
Configuring mips64-softmmu-config-devices.h using configuration
Configuring mips64el-softmmu-config-target.h using configuration
Configuring mips64el-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/mips64el-softmmu-config-devices.mak.d
Configuring mips64el-softmmu-config-devices.h using configuration
Configuring mipsel-softmmu-config-target.h using configuration
Configuring mipsel-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/mipsel-softmmu-config-devices.mak.d
Configuring mipsel-softmmu-config-devices.h using configuration
Configuring moxie-softmmu-config-target.h using configuration
Configuring moxie-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/moxie-softmmu-config-devices.mak.d
Configuring moxie-softmmu-config-devices.h using configuration
Configuring nios2-softmmu-config-target.h using configuration
Configuring nios2-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/nios2-softmmu-config-devices.mak.d
Configuring nios2-softmmu-config-devices.h using configuration
Configuring or1k-softmmu-config-target.h using configuration
Configuring or1k-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/or1k-softmmu-config-devices.mak.d
Configuring or1k-softmmu-config-devices.h using configuration
Configuring ppc-softmmu-config-target.h using configuration
Configuring ppc-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/ppc-softmmu-config-devices.mak.d
Configuring ppc-softmmu-config-devices.h using configuration
Configuring ppc64-softmmu-config-target.h using configuration
Configuring ppc64-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/ppc64-softmmu-config-devices.mak.d
Configuring ppc64-softmmu-config-devices.h using configuration
Configuring riscv32-softmmu-config-target.h using configuration
Configuring riscv32-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/riscv32-softmmu-config-devices.mak.d
Configuring riscv32-softmmu-config-devices.h using configuration
Configuring riscv64-softmmu-config-target.h using configuration
Configuring riscv64-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/riscv64-softmmu-config-devices.mak.d
Configuring riscv64-softmmu-config-devices.h using configuration
Configuring rx-softmmu-config-target.h using configuration
Configuring rx-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/rx-softmmu-config-devices.mak.d
Configuring rx-softmmu-config-devices.h using configuration
Configuring s390x-softmmu-config-target.h using configuration
Configuring s390x-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/s390x-softmmu-config-devices.mak.d
Configuring s390x-softmmu-config-devices.h using configuration
Configuring sh4-softmmu-config-target.h using configuration
Configuring sh4-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/sh4-softmmu-config-devices.mak.d
Configuring sh4-softmmu-config-devices.h using configuration
Configuring sh4eb-softmmu-config-target.h using configuration
Configuring sh4eb-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/sh4eb-softmmu-config-devices.mak.d
Configuring sh4eb-softmmu-config-devices.h using configuration
Configuring sparc-softmmu-config-target.h using configuration
Configuring sparc-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/sparc-softmmu-config-devices.mak.d
Configuring sparc-softmmu-config-devices.h using configuration
Configuring sparc64-softmmu-config-target.h using configuration
Configuring sparc64-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/sparc64-softmmu-config-devices.mak.d
Configuring sparc64-softmmu-config-devices.h using configuration
Configuring tricore-softmmu-config-target.h using configuration
Configuring tricore-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/tricore-softmmu-config-devices.mak.d
Configuring tricore-softmmu-config-devices.h using configuration
Configuring x86_64-softmmu-config-target.h using configuration
Configuring x86_64-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/x86_64-softmmu-config-devices.mak.d
Configuring x86_64-softmmu-config-devices.h using configuration
Configuring xtensa-softmmu-config-target.h using configuration
Configuring xtensa-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/xtensa-softmmu-config-devices.mak.d
Configuring xtensa-softmmu-config-devices.h using configuration
Configuring xtensaeb-softmmu-config-target.h using configuration
Configuring xtensaeb-softmmu-config-devices.mak with command
Reading depfile: /root/qemu/build/meson-private/xtensaeb-softmmu-config-devices.mak.d
Configuring xtensaeb-softmmu-config-devices.h using configuration
Configuring aarch64-linux-user-config-target.h using configuration
Configuring aarch64_be-linux-user-config-target.h using configuration
Configuring alpha-linux-user-config-target.h using configuration
Configuring arm-linux-user-config-target.h using configuration
Configuring armeb-linux-user-config-target.h using configuration
Configuring cris-linux-user-config-target.h using configuration
Configuring hppa-linux-user-config-target.h using configuration
Configuring i386-linux-user-config-target.h using configuration
Configuring m68k-linux-user-config-target.h using configuration
Configuring microblaze-linux-user-config-target.h using configuration
Configuring microblazeel-linux-user-config-target.h using configuration
Configuring mips-linux-user-config-target.h using configuration
Configuring mips64-linux-user-config-target.h using configuration
Configuring mips64el-linux-user-config-target.h using configuration
Configuring mipsel-linux-user-config-target.h using configuration
Configuring mipsn32-linux-user-config-target.h using configuration
Configuring mipsn32el-linux-user-config-target.h using configuration
Configuring nios2-linux-user-config-target.h using configuration
Configuring or1k-linux-user-config-target.h using configuration
Configuring ppc-linux-user-config-target.h using configuration
Configuring ppc64-linux-user-config-target.h using configuration
Configuring ppc64le-linux-user-config-target.h using configuration
Configuring riscv32-linux-user-config-target.h using configuration
Configuring riscv64-linux-user-config-target.h using configuration
Configuring s390x-linux-user-config-target.h using configuration
Configuring sh4-linux-user-config-target.h using configuration
Configuring sh4eb-linux-user-config-target.h using configuration
Configuring sparc-linux-user-config-target.h using configuration
Configuring sparc32plus-linux-user-config-target.h using configuration
Configuring sparc64-linux-user-config-target.h using configuration
Configuring x86_64-linux-user-config-target.h using configuration
Configuring xtensa-linux-user-config-target.h using configuration
Configuring xtensaeb-linux-user-config-target.h using configuration
Run-time dependency capstone found: NO (tried pkgconfig)
Configuring capstone-defs.h using configuration
Run-time dependency slirp found: NO (tried pkgconfig)
Configuring libslirp-version.h using configuration
Library fdt found: NO
Configuring config-host.h using configuration
Program scripts/hxtool found: YES
Program scripts/shaderinclude.pl found: YES
Program scripts/qapi-gen.py found: YES
Program scripts/qemu-version.sh found: YES
Run-time dependency threads found: YES
Program keycodemapdb/tools/keymap-gen found: YES
Program scripts/decodetree.py found: YES
Program ../scripts/modules/module_block.py found: YES
Program ../scripts/block-coroutine-wrapper.py found: YES
Program nm found: YES
Program scripts/undefsym.py found: YES
Program scripts/feature_to_c.sh found: YES
Program bzip2 found: YES
Configuring 50-edk2-i386-secure.json using configuration
Configuring 50-edk2-x86_64-secure.json using configuration
Configuring 60-edk2-aarch64.json using configuration
Configuring 60-edk2-arm.json using configuration
Configuring 60-edk2-i386.json using configuration
Configuring 60-edk2-x86_64.json using configuration
Program qemu-keymap found: NO
Program sphinx-build-3 sphinx-build found: NO
Program python3 found: YES (/usr/bin/python3)
Program diff found: YES
Program dbus-daemon found: YES
Program initrd-stress.sh found: YES
Build targets in project: 616

qemu 5.1.90

            Install prefix: /usr/local
            BIOS directory: share/qemu
             firmware path: /usr/local/share/qemu-firmware
          binary directory: bin
         library directory: lib
          module directory: lib/qemu
         libexec directory: libexec
         include directory: include
          config directory: /usr/local/etc
     local state directory: /usr/local/var
          Manual directory: share/man
             Doc directory: /usr/local/share/doc
           Build directory: /root/qemu/build
               Source path: /root/qemu
                GIT binary: git
            GIT submodules: ui/keycodemapdb tests/fp/berkeley-testfloat-3 tests/fp/berkeley-softfloat-3 meson dtc capstone slirp
                C compiler: clang-10
           Host C compiler: clang-10
              C++ compiler: clang++-10
                   ARFLAGS: rv
                    CFLAGS: -O2 -g
                  CXXFLAGS: -O2 -g
               QEMU_CFLAGS: -fsanitize=undefined -fsanitize=address -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv  -Wold-style-definition -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wnested-externs -Wendif-labels -Wexpansion-to-defined -Wno-initializer-overrides -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-string-plus-int -Wno-typedef-redefinition -Wno-tautological-type-limit-compare -fstack-protector-strong -fsanitize=fuzzer-no-link
              QEMU_LDFLAGS: -Wl,--warn-common -fsanitize=undefined -fsanitize=address -Wl,-z,relro -Wl,-z,now -m64  -fstack-protector-strong
                      make: make
                    python: /usr/bin/python3 (version: 3.8)
              sphinx-build: NO
               genisoimage: 
             slirp support: internal
                      smbd: "/usr/sbin/smbd"
            module support: NO
                  host CPU: x86_64
           host endianness: little
               target list: aarch64-softmmu alpha-softmmu arm-softmmu avr-softmmu cris-softmmu hppa-softmmu i386-softmmu m68k-softmmu microblaze-softmmu microblazeel-softmmu mips-softmmu mips64-softmmu mips64el-softmmu mipsel-softmmu moxie-softmmu nios2-softmmu or1k-softmmu ppc-softmmu ppc64-softmmu riscv32-softmmu riscv64-softmmu rx-softmmu s390x-softmmu sh4-softmmu sh4eb-softmmu sparc-softmmu sparc64-softmmu tricore-softmmu x86_64-softmmu xtensa-softmmu xtensaeb-softmmu aarch64-linux-user aarch64_be-linux-user alpha-linux-user arm-linux-user armeb-linux-user cris-linux-user hppa-linux-user i386-linux-user m68k-linux-user microblaze-linux-user microblazeel-linux-user mips-linux-user mips64-linux-user mips64el-linux-user mipsel-linux-user mipsn32-linux-user mipsn32el-linux-user nios2-linux-user or1k-linux-user ppc-linux-user ppc64-linux-user ppc64le-linux-user riscv32-linux-user riscv64-linux-user s390x-linux-user sh4-linux-user sh4eb-linux-user sparc-linux-user sparc32plus-linux-user sparc64-linux-user x86_64-linux-user xtensa-linux-user xtensaeb-linux-user
             gprof enabled: NO
            sparse enabled: NO
            strip binaries: YES
                  profiler: NO
              static build: NO
               SDL support: NO
         SDL image support: NO
               GTK support: NO
            GTK GL support: NO
                    pixman: YES
               VTE support: NO
              TLS priority: "NORMAL"
            GNUTLS support: NO
                 libgcrypt: NO
                    nettle: NO
                  libtasn1: NO
                       PAM: NO
             iconv support: YES
            curses support: YES
             virgl support: NO
              curl support: NO
           mingw32 support: NO
             Audio drivers: oss
      Block whitelist (rw): 
      Block whitelist (ro): 
            VirtFS support: NO
     build virtiofs daemon: NO
         Multipath support: NO
               VNC support: YES
          VNC SASL support: NO
          VNC JPEG support: NO
           VNC PNG support: NO
               xen support: NO
            brlapi support: NO
             Documentation: NO
                       PIE: YES
               vde support: NO
            netmap support: NO
         Linux AIO support: NO
    Linux io_uring support: NO
        ATTR/XATTR support: YES
             Install blobs: YES
               KVM support: YES
               HAX support: NO
               HVF support: NO
              WHPX support: NO
               TCG support: YES
         TCG debug enabled: NO
           TCG interpreter: NO
       malloc trim support: YES
              RDMA support: NO
            PVRDMA support: NO
               fdt support: internal
                membarrier: NO
            preadv support: YES
                 fdatasync: YES
                   madvise: YES
             posix_madvise: YES
            posix_memalign: YES
         libcap-ng support: NO
         vhost-net support: YES
      vhost-crypto support: YES
        vhost-scsi support: YES
       vhost-vsock support: YES
        vhost-user support: YES
     vhost-user-fs support: YES
        vhost-vdpa support: YES
            Trace backends: log
             spice support: NO
               rbd support: NO
            xfsctl support: NO
         smartcard support: NO
               U2F support: NO
                    libusb: NO
             usb net redir: NO
            OpenGL support: NO
            OpenGL dmabufs: NO
          libiscsi support: NO
            libnfs support: NO
         build guest agent: YES
           seccomp support: NO
         coroutine backend: ucontext
            coroutine pool: YES
         debug stack usage: NO
           mutex debugging: NO
              crypto afalg: NO
         GlusterFS support: NO
                      gcov: NO
               TPM support: YES
            libssh support: NO
             QOM debugging: YES
      Live block migration: YES
               lzo support: NO
            snappy support: NO
             bzip2 support: NO
             lzfse support: NO
              zstd support: NO
         NUMA host support: NO
                   libxml2: NO
          memory allocator: system
         avx2 optimization: NO
      avx512f optimization: NO
       replication support: YES
             bochs support: YES
             cloop support: YES
               dmg support: YES
           qcow v1 support: YES
               vdi support: YES
             vvfat support: YES
               qed support: YES
         parallels support: YES
          sheepdog support: NO
                  capstone: internal
           libpmem support: NO
         libdaxctl support: NO
                   libudev: NO
           default devices: YES
            plugin support: NO
           fuzzing support: YES
          thread sanitizer: NO
                  rng-none: NO
             Linux keyring: YES

Found ninja-1.10.0 at /usr/bin/ninja

Reply via email to