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

Re: PROPOSED: 32/64 bit coexistance

Previously Oliver Paukstadt wrote:
> I don't know if there are RPM or RedHat people on the list, because there
> are no redhat people among the explict named recipients. We should talk to
> the rpm people because I think if the package manager could solve our
> problem, we should solve the problem in a clean way and not have /lib
> pointing to /lib32 or /lib64 depending on an existant compatibility
> architecture or not. Great standard. ;-/

Horrible standard. And rpm is not the only way to distribute, it is just
one, others being deb and .tar.gz which are just as often used. (And
speaking as the dpkg maintainer, I refuse to add an silly hack like that).

There are two different issues here:
1. where to put libraries on systems that can run multiple binary types
   (multiple wordsizes for one architecture)
2. how do you solve 1 while making it possible to install software
   of one binary type on another system can also handle it (ie install
   ia32 binaries on a system that can handle ia32 and ia64).

A simple way to accomplish both is to put an binary type specifier
(i386-linux). gcc already does that, see /usr/lib/gcc-lib. Doing
that would be very nice: it means you could share your filesystem
space amongst many different types of machine without any worries
for example.

Unfortunately we have to deal with systems that are not using that
approach so we'll need to decide on something that we can do. 

Transparently moving things around is an approach does not work. It
assumes that you are using smart tools to install something which might
not be available, and the logic needed to detect what needs to be
moved and what not is also non-trvivial and bound to break things in
unexpected ways.

> And most distributors say "one source package for all architectures" so
> you need to use macros in your rpm spec file and especially in your %post
> and %pre scripts because on 64 bit architectures /lib is /lib64 and on 32
> bit architectures it is /lib or /lib32.

Please forget about rpm or whatever tool is used to install something,
this is not about packaging systems and they are completely irrelevant
to the discussion.

> In my opinion compatibility architectures are only for very rare special
> cases. The target is to have only native software. With this target a 
> /lib -> /lib32 is not acceptable.

No, the goal is to have a way to have multiple types of binaries installed
and working on a system that can run them.


 /       Nothing is fool-proof to a sufficiently talented fool     \
| wichert@wiggy.net                   http://www.liacs.nl/~wichert/ |
| 1024D/2FA3BC2D 576E 100B 518D 2F16 36B0  2805 3CB8 9250 2FA3 BC2D |

Reply to: