Kalev Lember wrote:
I would like to have a layout similar to what Debian is doing, so
that
shared libraries would go in /usr/lib/x86_64-redhat-linux/ and /usr/lib64
would be a legacy symlink pointing to it.
That layout is NOT compliant with the FHS.
Which is particularly hilarious as Debian has long refused to use
/usr/libexec (despite GNU having had it for ages, and Debian's refusal has
in turn lead several upstreams to not or poorly support it and abuse
/usr/lib or other directories for its purpose instead) because it was
purportedly against the FHS (it seems they have never noticed that the
clause that allows lib64 and lib32 does not actually require the suffix to
be a number, "exec" is a perfectly fine suffix, so libexec is just another
lib64/lib32-type directory), but was very fast to add an exception for this
new entirely non-standard layout. (The FHS requires the arch-specific libdir
variants to be suffixed sibling directories of lib, NOT subdirectories.)
That kind of layout would make it much easier to do cross
compilation
because you could just take the whole /usr/lib/another-host-triplet/
directory from another architecture without it interfering with the host
libraries and use it for cross compilation purposes.
Practical cross-compilation to a completely different architecture needs
sysroots anyway. That way, one can also easily target a different
distribution on a different (or even the same) architecture, not just Fedora
on a different architecture.
Kevin Kofler