[libvirt] [PATCH] Fix DSO linking problem for nodeinfotest
Daniel P. Berrange
berrange at redhat.com
Thu Feb 18 10:20:47 UTC 2010
On Wed, Feb 17, 2010 at 04:37:17PM +0100, Daniel Veillard wrote:
> Following changes in Fedora about exposing shared libraries
> dependancies, libvirt built failed for one of the test binaries
> because it didn't explicitely required -ldl
>
> gcc -DHAVE_CONFIG_H -I. -I.. -I../gnulib/lib -I../gnulib/lib
> -I../include -I../include -I../src -I../src/util -I../src/conf
> -I/usr/include/libxml2 -DGETTEXT_PACKAGE=\"libvirt\" -Wall
> -Wformat -Wformat-security -Wmissing-prototypes -Wnested-externs
> -Wpointer-arith -Wextra -Wshadow -Wcast-align -Wwrite-strings
> -Waggregate-return -Wstrict-prototypes -Winline -Wredundant-decls
> -Wno-sign-compare -Wp,-D_FORTIFY_SOURCE=2 -fexceptions
> -fasynchronous-unwind-tables -O2 -g -pipe -Wall
> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
> --param=ssp-buffer-size=4 -m32 -march=i686 -mtune=atom
> -fasynchronous-unwind-tables -c nodeinfotest.c
> CCLD nodeinfotest
> /usr/bin/ld:
> ../src/.libs/libvirt_test.a(libvirt_driver_vbox_la-vbox_XPCOMCGlue.o):
> undefined reference to symbol 'dlopen@@GLIBC_2.1'
> /usr/bin/ld: note: 'dlopen@@GLIBC_2.1' is defined in DSO /lib/libdl.so.2
> so try adding it to the linker command line
> /lib/libdl.so.2: could not read symbols: Invalid operation
> collect2: ld returned 1 exit status
>
> the following patch fixes it,
This isn't corect. nodeinfotest isn't the thing that is ultimately
using libdl. The place we need it is in src/Makefile.am against
libvirt_driver_vbox_la_LDFLAGS
NB, we also need to adjust the configure.ac check
Regards,
Daniel
--
|: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :|
|: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|
More information about the libvir-list
mailing list