libtool, multilib and test "duplicate convenience archive names"

2011-10-19 Thread Roumen Petrov

Hello All,

I wonder how to build and test on a 64 bit platform a 32 bit libtool 
version.


First test is to use --build=x86_64-gnu-linux --host=i386-gnu-linux with 
CC and CXX set to 'gcc|g++ -m32', i.e. multilib .


The libtool regression suite fail in test case :
25: duplicate convenience archive names FAILED 
(duplicate_conv.at:83)


From testsuite.log:

.../libtool-2.4.2/tests/duplicate_conv.at:83: $LIBTOOL --mode=link 
--tag=CC $CC $CFLAGS $LDFLAGS -o cee.$OBJEXT c.lo a/liba.la b/liba.la

stderr:
.../ld: Relocatable linking with relocations from format elf32-i386 
(.libs/c.o) to format elf64-x86-64 (cee.o) is not supported

stdout:
libtool: link: .../ld -r -o cee.o  .libs/c.o   --whole-archive 
a/.libs/liba.a b/.libs/liba.a --no-whole-archive



Eric PAIRE post a patch about linker emulation mode - ref.
http://lists.gnu.org/archive/html/bug-libtool/2011-06/msg1.html .


Based on Eric's suggestion I try to build without to set --host, i.e. as 
native build for x86_64-gnu-linux with gcc|g++ -m32 as compilers.


As result -m elf_i386 is added to linker (LD) and libtool regression 
test pass with:

114 tests behaved as expected.
12 tests were skipped.


Any thought on this ?


Regards,
Roumen

___
https://lists.gnu.org/mailman/listinfo/libtool


Re: rpath's with colons

2011-10-19 Thread Ruediger Meier
Hi,

sorry somehow I've missed your reply.

On Friday 07 October 2011, Eric Blake wrote:
> On 10/05/2011 11:07 AM, Ruediger Meier wrote:
> >
> > Does anybody of you know whether and how it's possible to specify
> > directories with colons like
> > /usr/lib/bad:dir/
> > as LD_LIBRARY_PATH at runtime or as rpath at linking time?
>
> Probably not possible, for the same reason that using directories
> with : in their name as part of $PATH is not possible.  Sorry.


Is this documented somewhere or is this obvious that there is no way 
to "escape" the colon somewhow?

The problem is that rpath or LD_LIBRARY_PATH  of libtool's convenience 
binaries will fail if the build directory path contains colons. IMO 
libtool should abort or at least warn if somebody tries to build within 
such broken path.

I was hitting this issue in practice when compiling xz from tar ball. 
Everything seemed to work but make check failed because it was using 
using a global installed liblzma instead of the freshly build one.


cu,
Rudi

___
https://lists.gnu.org/mailman/listinfo/libtool