On Mon, 7 Aug 2023, Jan Engelhardt wrote:
On Monday 2023-08-07 12:33, Richard Biener wrote:
In the old days when ppc64 had a 32bit user-land we had gdb64 etc., we could do the same for ld. The gdb baselibs.conf still has
gdb +/usr/bin/gdb -> /usr/bin/gdb<extension> # kill package for i586 32bit targetarch x86_64 block! prereq -glibc-x86
The gdb baselibs.conf is weird; strace falls into the same category but does not seem to need the targetarch block thing. strace baselibs.conf has more details..
not sure how trivial that would be do to for ld.
rpmrc lists architectures which are considered compatible, because those identifiers, in rpm, are used to denote ELF32-dominant-but-ELF64-capable environments:
arch_compat: ppc64: ppc arch_compat: sparc64: sparcv9
However, this is not the case for i586, because compatibility is just one-way. The pairing (if any) would be x32<->x86_64 instead.
Unless you want to repurpose the "i586" identifer inside rpm (you should rather use a different one IMO), installation of binutils.x86_64 inside i586 is not going to fly, for reason of that one-way compatibility.
We could also force that install, it would be really a special hack tailored to our build environment which we know is x86-64 capable ...