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

Multiarch support (was Moving 32-bit libraries to (/usr)/lib32 on amd64)



Hi!

Some update on this, as we have evolved a lot since the last mail.

Bdale Garbee a écrit :
On Tue, 2006-02-21 at 07:10 +0100, Aurelien Jarno wrote:


Moving 32-bit libraries to (/usr)/lib32 won't make the amd64 port compliant with the FHS, which is almost impossible given the current setup, ie 64-bit libraries in /lib. However, it would make it compliant with the part of the FHS which says that alternative libraries have to be in (/usr)/lib<qual>. And it would make us compatible with other distributions like Gentoo or Ubuntu that have choosen to use (/usr)/lib32.


What sort of value should we assign to achieving that level of
"compatibility" with other distributions before multiarch, where I
expect us to be in the lead and others to be trying to figure out if/how
to be compatible with Debian?

Part of the reason I'm unhappy about the current FHS situation is that
<qual> seems generally to get defined as "32" or "64" and the definition
of what belongs in the unqualified version of the directories feels
inconsistent across architectures.  Part of what I like about our
multiarch strategy is generalizing this to handle more "interesting"
cases like emulated execution environments, etc.  The world just isn't
as simple as 32 vs 64 implies...

I'm inclined to make as few "structural changes" to ia32-libs as
possible pending multiarch implementation.  The reason is that anything
we change is going to make work for people, including work we can't
anticipate or judge the scale of, like users who have laboriously worked
to manually install additional libraries on their systems.  If we're
going to put people through a transition process, I'd prefer it be the
transition to multiarch!

You have been heard! The glibc currently in incoming has a preliminary
multiarch support. It currently looks to librairies in both (/usr)/lib
and (/usr)/lib/$(host-triplet)/. It support additional libraries (like
the current one in multilib), via ldconfig, with /lib/ldconfig/ being
the configuration directory.

Using this it will be possible to add a link from (/usr)/lib64 to the
multiarch directories to be compliant with the FHS. And that let time to
discuss if we want a (/usr)/lib32 or not on amd64 :).

Currently those directories are supported on all architectures, but only
amd64 has files in them, a libc6 for i386. It will be used as a test
architecture before doing the same on other 32/64 bit architectures, as
there are very few packages to changes.

The next step is to add support to gcc, and to move all 32-bit libraries
on amd64 to (/usr)/lib/i486-linux-gnu.

I will send you some update and some patches for gcc, zlib (needed for
gcc) and ia32-libs soon.

Bye,
Aurelien

--
  .''`.  Aurelien Jarno	            | GPG: 1024D/F1BCDB73
 : :' :  Debian developer           | Electrical Engineer
 `. `'   aurel32@debian.org         | aurelien@aurel32.net
   `-    people.debian.org/~aurel32 | www.aurel32.net



Reply to: