RISC-V 64bit and 32bit binaries on the same system

Andreas K. Hüttel dilfridge@gentoo.org
Wed Sep 9 19:49:51 GMT 2020


> > (And it looks like a comparatively large amount of work for a situation
> > that is right now fairly hypothetical, unless you try silly things with
> > qemu like me).
> 
> It'd be great to bootstrap all the multilib stuff, but it's just a matter of
> priorities.  It's a fairly large amount of work to put this all together,
> but it shouldn't be all that hard to add writable XLEN to QEMU which would
> allow Linux to spin up rv32 processes.  There'd be a big pile of work left
> at that point, though...

Well it kinda-works half in a Gentoo qemu-user chroot right now, which is of 
course not the most useful production environment. :)

What looks good in my experiments:
* building and installing gcc with all 4 ABI and multilib paths
* building and installing glibc with all 4 ABI and multilib paths

Then, the Gentoo multilib system still works *if* I order the ld.so search 
paths right (all the executables are lp64d, so that comes first, and the 
ilp32[d] libs are ignored). All four ld.so variants are installed.

In principle, *if* ld.so were to ignore wrong elfclass (with all changes that 
this requires), a mixed multilib Gentoo install could work more or less out of 
the box. We already use /usr/lib64/lp64[d], and I hook into the same path 
adjustment mechanisms and multi-abi builds we have made for x86-64/i686 and 
others.

> > So maybe the multilib defaults of gcc should be changed?
> 
> Either way, that seems reasonable to me.  If we ever implement it we can
> always add the multilibs back, but it doesn't seem reasonable to default to
> something broken.  I bet you guys are the first to take a shot at the Linux
> multilib stuff, so I anticipate a bunch of stuff will be broken.
> 
> Do you want to send a GCC patch, or do you want me to?

I agree; we can always slowly prepare the support anyway so it's ready once 
there is hardware.

It's probably better if the gcc patch comes from you ("more official").

Best, 
Andreas

-- 
Andreas K. Hüttel
dilfridge@gentoo.org
Gentoo Linux developer 
(council, qa, toolchain, base-system, perl, libreoffice)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 963 bytes
Desc: This is a digitally signed message part.
URL: <https://sourceware.org/pipermail/libc-alpha/attachments/20200909/4f008cb7/attachment.sig>


More information about the Libc-alpha mailing list