AMD64 Linux documentation

Jakub Jelinek jakub at redhat.com
Fri Dec 12 17:05:05 UTC 2003


On Fri, Dec 12, 2003 at 11:45:59AM -0500, Gene C. wrote:
> Granted, some packages with be either/or but not both.  However, at least some 
> of the packages will require both to support both architectures -- glibc for 
> example.  Maybe I do not understand something.  Can the x86_64 version of 
> glibc support its libraries being used by a 32 bit application?  The same 
> question can be stated in the opposite direction -- can a 32 bit library 
> support being called by a 64 bit application?

The files in rpms are colored by rpm.  Data files or binaries have one
color 0, 32-bit shared and .a libraries color 1 and 64-bit shared and .a
libraries color 2.
When you are installing a rpm which is already installed with the same NEVR,
but different architecture, rpm will I believe ATM overwrite color 0 files
and install the opposite color from the other already used, so that you can
have both color 1 and color 2 of the same shared library, but only one
color 0 file.  Which means why installing the preferred arch last matters.
At least the original intent was that the order doesn't matter and through
rpm configuration files or perhaps some package tag as well you can
tell rpm which arch it should prefer (32-bit vs. 64-bit) for all packages or
even on a package by package basis.
This would change in rpm behaviour in that when installing the non-preferred
arch second, it would only install color != 0 files instead of all files.

	Jakub





More information about the devel mailing list