[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] Can't build without --disable-tcg after upgrading gcc (
From: |
Markus Armbruster |
Subject: |
Re: [Qemu-devel] Can't build without --disable-tcg after upgrading gcc (I think) |
Date: |
Thu, 21 Mar 2019 19:10:40 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) |
Richard Henderson <address@hidden> writes:
> On 3/20/19 11:38 PM, Markus Armbruster wrote:
>> Yesterday's "dnf upgrade" on my F28 box upgraded gcc to
>> gcc-8.2.1-6.fc28.x86_64 from 8.3.1-2.fc28.x86_64. Since then (I think),
>> builds fail for me, details appended. Any ideas?
>>
>> My temporary work-around is configure --disable-tcg.
>
> No ideas. I just did that same dnf upgrade, rm -rf build,
> and everything worked fine.
>
> gcc version 8.3.1 20190223 (Red Hat 8.3.1-2) (GCC)
> commit c692931cda9dc6cbc16b89d5094a725a10dbb641
> (HEAD -> master, origin/master, origin/HEAD)
In an empty build directory:
$ ccache -C
$ ../configure --disable-gnutls --disable-nettle --disable-gcrypt
--disable-sdl --disable-gtk --disable-vte --disable-curses --disable-vnc
--disable-vnc-sasl --disable-vnc-jpeg --disable-vnc-png --disable-cocoa
--disable-virtfs --disable-mpath --disable-xen --disable-xen-pci-passthrough
--disable-brlapi --disable-curl --disable-membarrier --disable-bluez
--disable-kvm --disable-hax --disable-hvf --disable-whpx --disable-rdma
--disable-pvrdma --disable-vde --disable-netmap --disable-linux-aio
--disable-cap-ng --disable-attr --disable-vhost-net --disable-vhost-crypto
--disable-spice --disable-rbd --disable-libiscsi --disable-libnfs
--disable-smartcard --disable-libusb --disable-live-block-migration
--disable-usb-redir --disable-lzo --disable-snappy --disable-bzip2
--disable-seccomp --disable-coroutine-pool --disable-glusterfs --disable-tpm
--disable-libssh2 --disable-numa --disable-libxml2 --disable-tcmalloc
--disable-jemalloc --disable-replication --disable-vhost-vsock --disable-opengl
--disable-virglrenderer --disable-xfsctl --disable-qom-cast-debug
--disable-tools --disable-vxhs --disable-bochs --disable-cloop --disable-dmg
--disable-qcow1 --disable-vdi --disable-vvfat --disable-qed --disable-parallels
--disable-sheepdog --disable-crypto-afalg --disable-vhost-user
--disable-capstone --disable-debug-mutex --disable-libpmem
$ make V=1
[...]
cc -iquote /work/armbru/qemu/bld-min/tcg -iquote tcg -iquote
/home/armbru/work/qemu/tcg -iquote /home/armbru/work/qemu/tcg/i386
-I/home/armbru/work/qemu/linux-headers
-I/home/armbru/work/qemu/bld-min/linux-headers -iquote . -iquote
/home/armbru/work/qemu -iquote /home/armbru/work/qemu/accel/tcg -iquote
/home/armbru/work/qemu/include -I/usr/include/pixman-1
-I/home/armbru/work/qemu/dtc/libfdt -Werror -pthread -I/usr/include/glib-2.0
-I/usr/lib64/glib-2.0/include -fPIE -DPIE -m64 -mcx16 -D_GNU_SOURCE
-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes
-Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes
-fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Wexpansion-to-defined
-Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body
-Wnested-externs -Wformat-security -Wformat-y2k -Winit-self
-Wignored-qualifiers -Wold-style-declaration -Wold-style-definition
-Wtype-limits -fstack-protector-strong -I../linux-headers -iquote .. -iquote
/home/armbru/work/qemu/target/i386 -DNEED_CPU_H -iquote
/home/armbru/work/qemu/include -MMD -MP -MT tcg/tcg-op.o -MF tcg/tcg-op.d -O2
-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -g -c -o tcg/tcg-op.o
/home/armbru/work/qemu/tcg/tcg-op.c
/home/armbru/work/qemu/tcg/tcg-op.c: In function ‘tcg_gen_clz_i32’:
/home/armbru/work/qemu/tcg/tcg-op.c:430:9: error: implicit declaration of
function ‘gen_helper_clz_i32’; did you mean ‘gen_helper_rem_i32’?
[-Werror=implicit-function-declaration]
gen_helper_clz_i32(ret, arg1, arg2);
^~~~~~~~~~~~~~~~~~
gen_helper_rem_i32
/home/armbru/work/qemu/tcg/tcg-op.c:430:9: error: nested extern declaration
of ‘gen_helper_clz_i32’ [-Werror=nested-externs]
[many more...]
My collection of --disable is a somewhat stale attempt at a
close-to-minimal build, and shouldn't matter.
I re-ran the failing compile with "-c -o tcg/tcg-op.o" replaced by "-E
-dD -o tcg/tcg-op.i", and uploaded the resulting tcg-op.i to
https://www.pond.sub.org/~armbru/debug/tcg-op.i
Diffing this against yours might provide clues.