
On 05/28/2012 08:43 PM, Alex Jia wrote:
I met some compiling error since May 26: <snip> make[3]: Entering directory `/home/ajia/Workspace/libvirt/src' CCLD libvirt_driver_qemu.la libtool: link: `libvirt_qemu_probes.lo' is not a valid libtool object I see that too 'make' still can't work now:
make[3]: Entering directory `/home/ajia/Workspace/libvirt/src' CCLD libvirt_driver_qemu.la libtool: link: cannot find the library `libvirt_driver_qemu_impl.la' or unhandled argument `libvirt_driver_qemu_impl.la' make[3]: *** [libvirt_driver_qemu.la] Error 1 make[3]: Leaving directory `/home/ajia/Workspace/libvirt/src' make[2]: *** [all] Error 2 make[2]: Leaving directory `/home/ajia/Workspace/libvirt/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/ajia/Workspace/libvirt' make: *** [all] Error 2 [root@202 libvirt]# find . -name libvirt_qemu_probes.d ./src/libvirt_qemu_probes.d [root@202 libvirt]# find . -name libvirt_qemu_probes.o ./src/libvirt_qemu_probes.o [root@202 libvirt]# find . -name libvirt_qemu_probes.lo
Found it, and I'm pushing this under the build-breaker rule. It's always fun when _deleting_ lines from Makefile.am results in _adding_ lines to Makefile to fix the bug. From 8a115526e6f64f1ffb2fbff6e29c845f68f66510 Mon Sep 17 00:00:00 2001 From: Eric Blake <eblake@redhat.com> Date: Tue, 29 May 2012 12:41:06 -0600 Subject: [PATCH] build: fix missing dependencies for libvirt-qemu.so The moment you specify a _DEPENDENCIES, automake (stupidly) assumes that you will specify _all_ dependencies for that target. This stupidity has been fixed in automake 1.12, but we cannot rely on newer automake everywhere. For libvirt_la_DEPENDENCIES, we took care of providing the full list, but for libvirt_qemu_la_DEPENDENCIES, we were missing the dependency on libvirt_qemu_impl.la, which resulted in a failed build: make[3]: Entering directory `/home/ajia/Workspace/libvirt/src' CCLD libvirt_driver_qemu.la libtool: link: `libvirt_qemu_probes.lo' is not a valid libtool object * src/Makefile.am (libvirt_driver_qemu_la_DEPENDENCIES): Delete; automake does a better job if it does the entire job. --- src/Makefile.am | 1 - 1 files changed, 0 insertions(+), 1 deletions(-) diff --git a/src/Makefile.am b/src/Makefile.am index e172e55..533e78a 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1294,7 +1294,6 @@ BUILT_SOURCES += libvirt_probes.h libvirt_probes.stp libvirt_functions.stp if WITH_QEMU libvirt_driver_qemu_la_LIBADD += libvirt_qemu_probes.lo nodist_libvirt_driver_qemu_la_SOURCES = libvirt_qemu_probes.h -libvirt_driver_qemu_la_DEPENDENCIES = libvirt_qemu_probes.lo libvirt_qemu_probes.o $(libvirt_driver_qemu_la_SOURCES): libvirt_qemu_probes.h endif -- 1.7.7.6 -- Eric Blake eblake@redhat.com +1-919-301-3266 Libvirt virtualization library http://libvirt.org