Comment 4 for bug 1324112

Revision history for this message
tal zilcer (talz-3) wrote : RE: [Qemu-devel] [Bug 1324112] [NEW] qemu parallel building error on libcacard.la

I didn’t mention it but im building qemu out of the source tree(running the configure in a different directory).
I tried to find the missing dependency but no luck.
The build error keeps happening Here is the end of the log(please note that I don’t see here "CC trace/generated-events.o"):.
lt CC trace/generated-events.lo
  GEN qemu-doc.html
  GEN qemu.1
  GEN qemu-img.1
  CC qapi-types.o
  CC qapi-visit.o
  CC qga/commands.o
  CPP optionrom/multiboot.asm
  CPP optionrom/linuxboot.asm
  CC qga/guest-agent-command-state.o
  CC qga/main.o
  CC qga/commands-posix.o
  CPP optionrom/kvmvapic.asm
  AS optionrom/multiboot.o
  AS optionrom/linuxboot.o
  CC qga/channel-posix.o
  CC qga/qapi-generated/qga-qapi-types.o
  AS optionrom/kvmvapic.o
  Building optionrom/multiboot.img
  Building optionrom/linuxboot.img
  Building optionrom/multiboot.raw
  Building optionrom/linuxboot.raw
  Building optionrom/kvmvapic.img
  CC qga/qapi-generated/qga-qapi-visit.o
  Signing optionrom/multiboot.bin
  Signing optionrom/linuxboot.bin
  CC qga/qapi-generated/qga-qmp-marshal.o
  CC qemu-img.o
  CC qmp-marshal.o
  LINK qemu-bridge-helper
install -c -m 0644 /home/talz/workspace/tools/qemu/qemu/sysconfigs/target/target-x86_64.conf "/home/talz/workspace/ /tools/qemu/install/linux_x86_64/etc/qemu"
  Building optionrom/kvmvapic.raw
  Signing optionrom/kvmvapic.bin
  lt CC trace/generated-tracers.lo
lt LINK libcacard.la
  AR libqemustub.a
  CC trace/generated-tracers.o
ar: .libs/libcacard.a: Error reading trace/generated-events.o: No such file or directory
make[2]: *** [libcacard.la] Error 1

-----Original Message-----
From: <email address hidden> [mailto:<email address hidden>] On Behalf Of Stefan Hajnoczi
Sent: Monday, June 09, 2014 4:38 PM
To: Tal Zilcer
Subject: Re: [Qemu-devel] [Bug 1324112] [NEW] qemu parallel building error on libcacard.la

On Wed, Jun 04, 2014 at 03:33:34AM -0000, tal zilcer wrote:
> Version 2.0.0
>
> Isn’t the libcacard Makefile run as a recursive make?
> how do you keep the dependencies between two different makes(libcacard and trace)?

In qemu.git/master:Makefile I see:
ifeq ($(CONFIG_SMARTCARD_NSS),y)
include $(SRC_PATH)/libcacard/Makefile
endif

That doesn't look like recursive make to me, but maybe I'm missing
something.

Stefan

--
You received this bug notification because you are subscribed to the bug
report.
https://bugs.launchpad.net/bugs/1324112

Title:
  qemu parallel building error on libcacard.la

Status in QEMU:
  New

Bug description:
  hi,

  im building qemu with a large make -j value(9).
  sometimes the build fails because of an error:
  libtool: link: ar cru .libs/libcacard.a stubs/arch-query-cpu-def.o stubs/clock-warp.o stubs/cpu-get-clock.o stubs/cpu-get-icount.o stubs/dump.o stubs/fdset-add-fd.o stubs/fdset-find-fd.o stubs/fdset-get-fd.o stubs/fdset-remove-fd.o stubs/gdbstub.o stubs/get-fd.o stubs/get-vm-name.o stubs/iothread-lock.o stubs/migr-blocker.o stubs/mon-is-qmp.o stubs/mon-printf.o stubs/mon-print-filename.o stubs/mon-protocol-event.o stubs/mon-set-error.o stubs/pci-drive-hot-add.o stubs/qtest.o stubs/reset.o stubs/runstate-check.o stubs/set-fd-handler.o stubs/slirp.o stubs/sysbus.o stubs/uuid.o stubs/vm-stop.o stubs/vmstate.o stubs/cpus.o stubs/kvm.o libcacard/cac.o libcacard/event.o libcacard/vcard.o libcacard/vreader.o libcacard/vcard_emul_nss.o libcacard/vcard_emul_type.o libcacard/card_7816.o libcacard/vcardt.o util/osdep.o util/cutils.o util/qemu-timer-common.o util/error.o util/qemu-error.o util/oslib-posix.o util/qemu-thread-posix.o trace/generated-events.o trace/default.o trace/control.o trace/generated-tracers.o
  ar: trace/generated-events.o: No such file or directory
  make[2]: *** [libcacard.la] Error 1

  i see the build of generated-events.o in the log before the ar command.
  because of the -j it was probably not completed yet.
  the generated-events.o build command:
  /usr/bin/gcc -I/home/npsdb/qemu/qemu/tcg -I/home/npsdb/qemu/qemu/tcg/i386 -I/home/npsdb/qemu/qemu/linux-headers -I/home/npsdb/qemu/build/linux_x86_64/linux-headers -I. -I/home/npsdb/qemu/qemu -I/home/npsdb/jenkins/qemu/qemu/include -I/home/npsdb/qemu/qemu/libcacard -Itrace -Itrace -fPIE -DPIE -m64 -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 -Wendif-labels -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-all -I/usr/include/libpng12 -I/usr/include/nss3 -I/usr/include/nspr4 -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/home/npsdb/qemu/qemu/tests -I qga/qapi-generated -MMD -MP -MT trace/generated-events.o -MF trace/generated-events.d -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -g -c -o trace/generated-events.o trace/generated-events.c

  must be a race condition in the makefile because of a missing dependency.
  i tried to find it but it was a little bit complicated to me.

  thanks,
  tal

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1324112/+subscriptions