Re: Has anyone tried to build QEMU from ports lately?
Date: Mon, 10 Oct 2022 17:53:29 UTC
On Mon, Oct 10, 2022 at 10:56 AM Warner Losh <imp@bsdimp.com> wrote: > I know what's causing this problem. I'll resolve. > > tl/dr: _pv_entry.h depends on sys/param.h being included before its use. > https://reviews.freebsd.org/D36927 fixes it by making sys/_pv_entry.h more self-contained and less reliant on param.h pollution. The kernel includes that everywhere it's used, but userland is more hit or miss because machine/pmap.h isn't a well defined interface, but is needed for some things sometimes. Warner > Warner > > On Mon, Oct 10, 2022 at 4:38 AM Dennis Clarke <dclarke@blastwave.org> > wrote: > >> >> On : >> >> phobos# >> phobos# uname -apKU >> FreeBSD phobos 14.0-CURRENT FreeBSD 14.0-CURRENT #14 >> main-n258340-497cdf9673e: Sun Oct 2 09:51:14 GMT 2022 >> root@phobos:/usr/obj/usr/src/amd64.amd64/sys/GENERIC amd64 amd64 1400072 >> 1400072 >> phobos# >> >> >> Seems to fail in a pretty consistent fashion : >> >> . >> . >> . >> [5633/6772] Compiling C object libqemu-arm-bsd-user.fa.p/bsd-user_mmap.c.o >> [5634/6772] Compiling C object >> libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o >> FAILED: libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o >> cc -m64 -mcx16 -Ilibqemu-arm-bsd-user.fa.p -I. -I.. -Itarget/arm >> -I../target/arm -I../common-user/host/x86_64 -I../bsd-user/include >> -Ibsd-user/freebsd -I../bsd-user/freebsd -I../bsd-user/host/x86_64 >> -Ibsd-user -I../bsd-user -I../bsd-user/arm -Iqapi -Itrace -Iui >> -Iui/shader -I/usr/local/include/capstone >> -I/usr/ports/emulators/qemu-devel/work/qemu-09ed077d7fae5f825e18ff9a2004dcdd1b165edb >> >> -I/usr/local/include -I/usr/local/include/glib-2.0 >> -I/usr/local/lib/glib-2.0/include -fcolor-diagnostics -Wall >> -Winvalid-pch -std=gnu11 -O0 -g -iquote . -iquote >> /usr/ports/emulators/qemu-devel/work/qemu-09ed077d7fae5f825e18ff9a2004dcdd1b165edb >> >> -iquote >> /usr/ports/emulators/qemu-devel/work/qemu-09ed077d7fae5f825e18ff9a2004dcdd1b165edb/include >> >> -iquote >> /usr/ports/emulators/qemu-devel/work/qemu-09ed077d7fae5f825e18ff9a2004dcdd1b165edb/tcg/i386 >> >> -pthread -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 >> -Wno-psabi -fstack-protector-strong -O2 -pipe -fstack-protector-strong >> -fno-strict-aliasing '-DPREFIX=\""/usr/local\""' -fPIE -DNEED_CPU_H >> '-DCONFIG_TARGET="arm-bsd-user-config-target.h"' >> '-DCONFIG_DEVICES="arm-bsd-user-config-devices.h"' -MD -MQ >> libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o -MF >> libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o.d -o >> libqemu-arm-bsd-user.fa.p/bsd-user_signal.c.o -c ../bsd-user/signal.c >> In file included from ../bsd-user/signal.c:27: >> In file included from ../bsd-user/host/x86_64/host-signal.h:14: >> In file included from /usr/include/vm/pmap.h:92: >> /usr/include/machine/pmap.h:452:2: error: fields must have a constant >> size: 'variable length array in structure' extension will never be >> supported >> PV_CHUNK_HEADER >> ^ >> /usr/include/machine/pmap.h:448:12: note: expanded from macro >> 'PV_CHUNK_HEADER' >> uint64_t pc_map[_NPCM]; /* bitmap; 1 = free */ \ >> ^ >> /usr/include/machine/pmap.h:456:2: error: fields must have a constant >> size: 'variable length array in structure' extension will never be >> supported >> PV_CHUNK_HEADER >> ^ >> /usr/include/machine/pmap.h:448:12: note: expanded from macro >> 'PV_CHUNK_HEADER' >> uint64_t pc_map[_NPCM]; /* bitmap; 1 = free */ \ >> ^ >> 2 errors generated. >> ninja: build stopped: subcommand failed. >> gmake[3]: *** [Makefile:162: run-ninja] Error 1 >> gmake[3]: Leaving directory >> >> '/usr/ports/emulators/qemu-devel/work/qemu-09ed077d7fae5f825e18ff9a2004dcdd1b165edb/build' >> gmake[2]: *** [GNUmakefile:11: all] Error 2 >> gmake[2]: Leaving directory >> >> '/usr/ports/emulators/qemu-devel/work/qemu-09ed077d7fae5f825e18ff9a2004dcdd1b165edb' >> *** Error code 2 >> >> Stop. >> make[1]: stopped in /usr/ports/emulators/qemu-devel >> *** Error code 1 >> >> Stop. >> make: stopped in /usr/ports/emulators/qemu-devel >> phobos# >> phobos# pwd >> /usr/ports/emulators/qemu-devel >> phobos# >> >> Possibly a problem with -linotify or who knows what ? >> >> Also see : >> >> https://lists.nongnu.org/archive/html/qemu-devel/2022-10/msg01280.html >> >> In any case, something feels wrong here. >> >> >> -- >> Dennis Clarke >> RISC-V/SPARC/PPC/ARM/CISC >> UNIX and Linux spoken >> GreyBeard and suspenders optional >> >>