Closed Andy2244 closed 5 years ago
If you don't mind to wait, qemu 3.1 would be available in next release.
I use clearlinux as build system to cross compile, so i need to-be able to compile qemu on clearlinux. So i'm looking for the specific compile fix, probably zlib related. It seems qemu 3.1 compiles fine under ubuntu.
Can you post the whole compile log, and not just the (last) failure?
Everything beforehand compiles fine without errors/warnings:
...
GEN aarch64_be-linux-user/gdbstub-xml.c
CC aarch64_be-linux-user/gdbstub-xml.o
CC aarch64_be-linux-user/gdbstub.o
CC aarch64_be-linux-user/thunk.o
CC aarch64_be-linux-user/accel/stubs/hax-stub.o
CC aarch64_be-linux-user/accel/stubs/hvf-stub.o
CC aarch64_be-linux-user/accel/stubs/whpx-stub.o
CC aarch64_be-linux-user/accel/stubs/kvm-stub.o
CC aarch64_be-linux-user/accel/tcg/tcg-runtime.o
CC aarch64_be-linux-user/accel/tcg/tcg-runtime-gvec.o
CC aarch64_be-linux-user/accel/tcg/cpu-exec.o
CC aarch64_be-linux-user/accel/tcg/cpu-exec-common.o
CC aarch64_be-linux-user/accel/tcg/translate-all.o
CC aarch64_be-linux-user/accel/tcg/translator.o
CC aarch64_be-linux-user/accel/tcg/user-exec.o
CC aarch64_be-linux-user/accel/tcg/user-exec-stub.o
CC aarch64_be-linux-user/linux-user/main.o
CC aarch64_be-linux-user/linux-user/syscall.o
CC aarch64_be-linux-user/linux-user/strace.o
CC aarch64_be-linux-user/linux-user/mmap.o
CC aarch64_be-linux-user/linux-user/signal.o
CC aarch64_be-linux-user/linux-user/elfload.o
CC aarch64_be-linux-user/linux-user/linuxload.o
CC aarch64_be-linux-user/linux-user/uaccess.o
CC aarch64_be-linux-user/linux-user/uname.o
CCAS aarch64_be-linux-user/linux-user/safe-syscall.o
CC aarch64_be-linux-user/linux-user/aarch64/signal.o
CC aarch64_be-linux-user/linux-user/aarch64/cpu_loop.o
CC aarch64_be-linux-user/linux-user/exit.o
CC aarch64_be-linux-user/linux-user/fd-trans.o
CC aarch64_be-linux-user/linux-user/flatload.o
CC aarch64_be-linux-user/target/arm/arm-semi.o
CC aarch64_be-linux-user/target/arm/kvm-stub.o
CC aarch64_be-linux-user/target/arm/translate.o
CC aarch64_be-linux-user/target/arm/op_helper.o
CC aarch64_be-linux-user/target/arm/helper.o
CC aarch64_be-linux-user/target/arm/cpu.o
CC aarch64_be-linux-user/target/arm/neon_helper.o
CC aarch64_be-linux-user/target/arm/iwmmxt_helper.o
CC aarch64_be-linux-user/target/arm/vec_helper.o
CC aarch64_be-linux-user/target/arm/gdbstub.o
CC aarch64_be-linux-user/target/arm/cpu64.o
CC aarch64_be-linux-user/target/arm/translate-a64.o
CC aarch64_be-linux-user/target/arm/helper-a64.o
CC aarch64_be-linux-user/target/arm/gdbstub64.o
CC aarch64_be-linux-user/target/arm/crypto_helper.o
CC aarch64_be-linux-user/target/arm/translate-sve.o
CC aarch64_be-linux-user/target/arm/sve_helper.o
CC aarch64_be-linux-user/trace/generated-helpers.o
CC aarch64_be-linux-user/trace/control-target.o
LINK aarch64_be-linux-user/qemu-aarch64_be
/usr/bin/ld: target/arm/helper.o: in function `helper_crc32':
/root/qemu-3.1.0/target/arm/helper.c:12718: undefined reference to `crc32'
/usr/bin/ld: target/arm/helper-a64.o: in function `helper_crc32_64':
/root/qemu-3.1.0/target/arm/helper-a64.c:500: undefined reference to `crc32'
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:199: qemu-aarch64_be] Error 1
make: *** [Makefile:483: subdir-aarch64_be-linux-user] Error 2
Can't reproduce without configure flags, it just compiles fine for me.
Can't reproduce without configure flags, it just compiles fine for me.
yeah thats why i posted the configure flags, i only need the qemu userspace bins and not the full system ones, so i disable anything else. Just tested 3.0 and it compiles fine with the same flags, so something changed for qemu and clearlinux.
You know from which lib the crc32
function should come from?
all those flags are what cause the compile error. You'll have to figure out which thing you disable causes the crc32 function not to be compiled. It appears this may be an upstream bug, even. Although given the sheer amount of --disable flags you're passing, it's kinda logical. I mean, you even disable KVM support :)
Although given the sheer amount of --disable flags you're passing, it's kinda logical. I mean, you even disable KVM support :)
Don't blame me, blame the samba.org team :) This config is the minimal setup to cross compile samba4 via WAF/QEMU, without having a long list of extra compile dependency's, just for qemu.
PS: Guess i have to check all of them one by one.... thanks for the quick check on your side.
well, there's a zlib-test one that pops out, as well as other compression related ones, I'd try them first. :)
@ahkok Sorry for the late reply, did forget about this. Your guess was spot on, allowing zlib-test
fixed it.
thanks
Describe the bug QEMU 3.1 wont compile under clearlinux.
To Reproduce Steps to reproduce the behavior:
I use those configure options:
Expected behavior The error i get is:
This might be zlib related, from what i have seen in the helper.h file.
Environment (please complete the following information):