
On Fri, Dec 09, 2011 at 02:18:02PM +0100, Christophe Fergeau wrote:
Hi,
On Fri, Dec 09, 2011 at 11:18:48AM +0000, Daniel P. Berrange wrote:
There is something odd about the way it is being built:
The combination of these 3 sets of messages, makes me think you have confused libtool into linking to the old binary
What arguments are you passing to 'configure' and what if any variables are you passing to 'make install' ?
Yes, jhbuild is being a bit convoluted when building things, it uses ./configure --prefix $prefix ..., but then it does a make install DESTDIR=$prefix/_jhbuild (or something like this), and then it moves the files to the right place in $prefix after cleaning up the old version of the library that might be there. I just tried without using jhbuild to build libvirt, but just the tarballs, and I can reproduce when using make install DESTDIR=... and then cleaning $prefix from libvirt libs, and then copying what's in DESTDIR to $prefix. Not sure it's worth spending a lot of time on this convoluted scenario :)
I looked some more into it, and I think what happens is that: - libvirt.so gets installed to $DESTDIR/$libdir - libvirt-qemu.so gets relinked by libtool during installation, but uses libvirt from $libdir for this relink - $libdir/libvirt.so gets replaced with $DESDIR/$libdir/libvirt.so - libvirt-qemu.so now has some references to a library that has now disappeared http://www.gnu.org/software/libtool/manual/html_node/Install-mode.html seems to indicate this scenario cannot be supported correctly :( "For systems where fast installation can not be turned on, relinking may be needed. In this case, a ‘DESTDIR’ install will fail. Currently it is not generally possible to install into a temporary staging area that contains needed third-party libraries which are not yet visible at their final location. " (I think linux doesn't have fast installation) Christophe