libtool
[Top][All Lists]
Advanced

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

Re: How does one specify linking to 64 bit libraries when there is a cho


From: Ralf Corsepius
Subject: Re: How does one specify linking to 64 bit libraries when there is a choice?
Date: Wed, 22 Dec 2010 16:13:51 +0100
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.13) Gecko/20101209 Fedora/3.1.7-0.35.b3pre.fc14 Thunderbird/3.1.7

On 12/20/2010 08:02 PM, Bruce Korb wrote:
On 12/20/10 09:11, Nick Bowler wrote:
On 2010-12-20 08:54 -0800, Bruce Korb wrote:
If the default build is 64 bit, why does it make sense that the
default library directory is the 32 bit library?

As far as I know, the only reason for this design is to avoid breaking
32-bit proprietary software with /usr/lib paths hardcoded into their
binaries.

Which argues for keeping /usr/lib as a 32 bit library directory,
but not for making it the default directory.

Pardon, but I can not avoid having to reiterate my mantra:
/usr/lib and /usr/lib64 are just one random case of multilibs, which happens to be popular on currently far spread and widely used targets.

However, there are _many_ more targets, which apply completely different conventions. In particular, they are very wide spread on embedded targets, where they often are being used for optimization purposes.

Perhaps all the "stake holders" need to be put into a virtual meeting
room and not allowed out until some way forward is chosen. ;)
Well,

a) Users should learn that autoconf's default are "just arbitrary defaults", which match their use-case or not.

This is nothing new. System integrators need to take care about this in any case and for uneducated "random users" there a plenty of other possiblities to shoot themselves into their own foot (e.g. by installing to /usr/local)

b) The solution would be along the lines of

libdir='${exec_prefix}/lib/'"$(${CC} ${CFLAGS} --print-multi-os-directory)"

However, how to implement this into autoconf is far from being clear to me, as well as I would expect the details could easily become ugly.

I do think that autoconf was conceived as the place where
inconsistencies between platforms get resolved.  This is an
inconsistency that could really use a resolution that does not
require people to have to remember platform dependent tool use rules.

I wonder why this issue pops up now? It is around for probably more than 15 years and has never been a major issue. At least the first system I personally tripped over, which was using multilibs was a Sun Sparc Solaris system ca. in 1995 (Solaris 2.7/SunOS-5.7 or so). The oldest piece of code I could find by brief look into GCC's source code dates back to 1997.

Ralf



reply via email to

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