Hi Juan, On 01/20/2018 08:36 PM, Juan Quintela wrote: > Peter Maydell <peter.mayd...@linaro.org> wrote: >> On 19 January 2018 at 16:43, Alexey Perevalov <a.pereva...@samsung.com> >> wrote: >>> As I remember, I tested build in QEMU's docker build system, >>> but now I checked it on i386 Ubuntu, and yes linker says about unresolved >>> atomic symbols. Next week, I'll have a time to investigate it deeper. >> >> This sounds like exactly the problem I pointed out in a previous >> round of this patchset :-( >> >> https://lists.gnu.org/archive/html/qemu-devel/2018-01/msg02103.html >> >> Ignoring comments and sending patches anyway makes me grumpy, >> especially when the result is exactly "fails obscurely on >> some architectures only"... > > It compiles for me. F25 i686 gcc. I did change it to use intptr_t > instead of uint64_t. So, I don't know what is going on here. > > Then, I have a report that clang -m32 didn't work (Mat). I haven't been > able yet to reproduce. I don't have 32bits libraries installed on my > x86_64 systems. clang compiles for me on both 64 bits (f27) and 32bits > native (f25, it is a long history that it is not f27). > > So, I can agree that we have to fix anything that don't work, but I > can't agree that I didn't care about comments, at least I tried to fix > the problems you pointed me to. > > What I don't have is an easier way of compiling on arm and ppc32, but I > will search a way to do that for my pull requsets.
You can use docker to cross compile (supposed to work on any Linux): $ make docker-test-build@debian-powerpc-cross If you don't want to rebuild all the images the following commands are faster to modify the codebase and rebuild more frequently: $ mkdir -p build_ppc32 $ docker run --rm -it -v `pwd`:`pwd` -w `pwd`/build_ppc32 -u `id -u` qemu:debian-powerpc-cross sh -c '../configure $QEMU_CONFIGURE_OPTS' [...] $ docker run --rm -it -v `pwd`:`pwd` -w `pwd`/build_ppc32 -u `id -u` qemu:debian-powerpc-cross make -j4 subdir-ppc-softmmu [...] CC ppc-softmmu/gdbstub-xml.o CC ppc-softmmu/trace/generated-helpers.o LINK ppc-softmmu/qemu-system-ppc ../migration/postcopy-ram.o: In function `mark_postcopy_blocktime_end': /source/qemu/migration/postcopy-ram.c:717: undefined reference to `__atomic_fetch_add_8' /source/qemu/migration/postcopy-ram.c:738: undefined reference to `__atomic_fetch_add_8' ../migration/postcopy-ram.o: In function `mark_postcopy_blocktime_begin': /source/qemu/migration/postcopy-ram.c:651: undefined reference to `__atomic_exchange_8' /source/qemu/migration/postcopy-ram.c:652: undefined reference to `__atomic_exchange_8' /source/qemu/migration/postcopy-ram.c:661: undefined reference to `__atomic_exchange_8' collect2: error: ld returned 1 exit status Makefile:193: recipe for target 'qemu-system-ppc' failed make[1]: *** [qemu-system-ppc] Error 1 Makefile:391: recipe for target 'subdir-ppc-softmmu' failed make: *** [subdir-ppc-softmmu] Error 2
signature.asc
Description: OpenPGP digital signature