[libvirt] Make check on current git fails when building --with-vbox

Hi all, ./configure --without-vbox make make check produces on my F-13 and F-15 machines. make[1]: Entering directory `/home/ruben/src/libvirt/tests' make virshtest conftest sockettest nodeinfotest qparamtest virbuftest commandtest commandhelper seclabeltest hashtest qemuxml2argvtest qemuxml2xmltest qemuargv2xmltest qemuhelptest openvzutilstest vmx2xmltest xml2vmxtest networkxml2xmltest nwfilterxml2xmltest storagevolxml2xmltest storagepoolxml2xmltest nodedevxml2xmltest interfacexml2xmltest cputest eventtest make[2]: Entering directory `/home/ruben/src/libvirt/tests' CC virshtest.o CC testutils.o CCLD virshtest CC conftest.o CCLD conftest CC sockettest.o CCLD sockettest CC nodeinfotest.o CCLD nodeinfotest CC qparamtest.o CCLD qparamtest CC virbuftest.o CCLD virbuftest CC commandtest-commandtest.o CC commandtest-testutils.o CCLD commandtest CC commandhelper-commandhelper.o CCLD commandhelper CC seclabeltest.o CCLD seclabeltest CC hashtest.o CCLD hashtest CC qemuxml2argvtest.o CC testutilsqemu.o CCLD qemuxml2argvtest /usr/bin/ld: ../src/.libs/libvirt_test.a(libvirt_driver_la-lock_manager.o): undefined reference to symbol 'dlclose@@GLIBC_2.2.5' /usr/bin/ld: note: 'dlclose@@GLIBC_2.2.5' is defined in DSO /lib64/libdl.so.2 so try adding it to the linker command line /lib64/libdl.so.2: could not read symbols: Invalid operation collect2: ld returned 1 exit status make[2]: *** [qemuxml2argvtest] Error 1 make[2]: Leaving directory `/home/ruben/src/libvirt/tests' make[1]: *** [check-am] Error 2 make[1]: Leaving directory `/home/ruben/src/libvirt/tests' make: *** [check-recursive] Error 1 Kind regards, Ruben

2011/6/7 Ruben Kerkhof <ruben@rubenkerkhof.com>:
Hi all,
./configure --without-vbox make make check
produces on my F-13 and F-15 machines.
make[1]: Entering directory `/home/ruben/src/libvirt/tests' make virshtest conftest sockettest nodeinfotest qparamtest virbuftest commandtest commandhelper seclabeltest hashtest qemuxml2argvtest qemuxml2xmltest qemuargv2xmltest qemuhelptest openvzutilstest vmx2xmltest xml2vmxtest networkxml2xmltest nwfilterxml2xmltest storagevolxml2xmltest storagepoolxml2xmltest nodedevxml2xmltest interfacexml2xmltest cputest eventtest make[2]: Entering directory `/home/ruben/src/libvirt/tests' CC virshtest.o CC testutils.o CCLD virshtest CC conftest.o CCLD conftest CC sockettest.o CCLD sockettest CC nodeinfotest.o CCLD nodeinfotest CC qparamtest.o CCLD qparamtest CC virbuftest.o CCLD virbuftest CC commandtest-commandtest.o CC commandtest-testutils.o CCLD commandtest CC commandhelper-commandhelper.o CCLD commandhelper CC seclabeltest.o CCLD seclabeltest CC hashtest.o CCLD hashtest CC qemuxml2argvtest.o CC testutilsqemu.o CCLD qemuxml2argvtest /usr/bin/ld: ../src/.libs/libvirt_test.a(libvirt_driver_la-lock_manager.o): undefined reference to symbol 'dlclose@@GLIBC_2.2.5' /usr/bin/ld: note: 'dlclose@@GLIBC_2.2.5' is defined in DSO /lib64/libdl.so.2 so try adding it to the linker command line /lib64/libdl.so.2: could not read symbols: Invalid operation collect2: ld returned 1 exit status make[2]: *** [qemuxml2argvtest] Error 1 make[2]: Leaving directory `/home/ruben/src/libvirt/tests' make[1]: *** [check-am] Error 2 make[1]: Leaving directory `/home/ruben/src/libvirt/tests' make: *** [check-recursive] Error 1
Kind regards,
Ruben
This is because of the locking manager using dlopen but not linking against libdl explicitly. The VirtualBox driver happens to link libdl in, but without it libdl is missing, We currently link libvirt with libdl when the VirtualBox driver is enabled or when driver modules are enabled. We need to link with libdl unconditional now. I'll post a patch for this. Matthias

On Tue, Jun 7, 2011 at 23:00, Matthias Bolte <matthias.bolte@googlemail.com> wrote:
This is because of the locking manager using dlopen but not linking against libdl explicitly. The VirtualBox driver happens to link libdl in, but without it libdl is missing, We currently link libvirt with libdl when the VirtualBox driver is enabled or when driver modules are enabled. We need to link with libdl unconditional now. I'll post a patch for this.
Great, thanks Matthias! Ruben

2011/6/8 Ruben Kerkhof <ruben@rubenkerkhof.com>:
On Tue, Jun 7, 2011 at 23:00, Matthias Bolte <matthias.bolte@googlemail.com> wrote:
This is because of the locking manager using dlopen but not linking against libdl explicitly. The VirtualBox driver happens to link libdl in, but without it libdl is missing, We currently link libvirt with libdl when the VirtualBox driver is enabled or when driver modules are enabled. We need to link with libdl unconditional now. I'll post a patch for this.
Great, thanks Matthias!
Ruben
Here's the patch https://www.redhat.com/archives/libvir-list/2011-June/msg00438.html -- Matthias Bolte http://photron.blogspot.com
participants (2)
-
Matthias Bolte
-
Ruben Kerkhof