bug-libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#8558: libtool must not depend on existence of system '/usr/lib*/*.la


From: Jason Vas Dias
Subject: bug#8558: libtool must not depend on existence of system '/usr/lib*/*.la' files
Date: Tue, 26 Apr 2011 13:38:15 +0100
User-agent: KMail/1.12.4 (Linux/2.6.38.2-jvd; KDE/4.3.4; x86_64; svn-1073138; 2010-01-11)

This bug is related to,  but different from, bug #8537, and is fixed by the 
patch 
(to INSTALLED script) that I submitted for that bug .

My 32-bit C++ libtool builds were failing because libtool incorrectly accessed
   /usr/lib64/gcc/x86_64-pc-linux-gnu/4.6.0/libstdc++v3.la , 
which gcc installs for its 64-bit environment, NOT 
   /usr/lib64/gcc/x86_64-pc-linux-gnu/4.6.0/32/libstdc++v3.la ,
which gcc installs for its 64-bit environment.

So I removed all gcc libtool files (I still have the build tree) :
  $ find /usr/lib64/gcc/x86_64-pc-linux-gnu/4.6.0  -name '*.la' -a -exec 'rm' 
'{}' ';'

And I try to rebuild the 32-bit package from scratch, and it fails because 
libtool can
find no system 'libstdc++v3.la' file. 

Then also the C++ 64-bit builds fail because of missing libstdc++v3.la files .

So :
  o I cannot build 32-bit C++ programs with libtool when the 64-bit 
libstdc++v3.la file is installed;
  o I cannot build 64-bit or 32-bit C++ programs with libtool without any 
libstdc++v3.la files installed.

In both cases all the 
   
/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.0/{,32/}lib{stdc++v3,suppc++,suppc++convenience}.{a,so}
 files
existed correctly, so why didn't libtool pick them up and use them ?

Why is libtool demanding that I install system /usr/*/*.la files ? 
I thought installing these was optional ?

I think this is all to do with libtool using a hardcoded 
$sys_lib_search_path_spec :

/usr/bin/address@hidden 274:
# Compile-time system search path for libraries.
sys_lib_search_path_spec="/usr/lib64/gcc/x86_64-pc-linux-gnu/lib64 /usr/lib64 
/lib64 /usr/x86_64-pc-linux-gnu/lib "

when I think it should be saying:
# Compile-time system search path for libraries.
sys_lib_search_path_spec="$(${CC:-gcc} $CFLAGS -print-search-dirs |sed -n 
'/^libraries:/{s/^libraries[:=\ \       ]*//;s/:/ /g;p}')"

Please, Mike, libtool developers, what is wrong with my reasoning here ?





reply via email to

[Prev in Thread] Current Thread [Next in Thread]