rust on x32

Jan Palus atler at pld-linux.org
Fri May 28 00:44:56 CEST 2021


On 25.05.2021 10:17, Jan Rękorajski wrote:
> Hi,
> 
> Could someone with rust build chain knowlegde look at rust on x32?
> 
> My findings so far are that it does not build with target
> x86_64-...-gnux32, so we would have to build the compiler for x86_64 and
> just the stdlib for gnux32, the docs say that rust is a cross compiler by default...
> so, should be doable even without pulling binary x32 stdlib for bootstrapping.
> 
> I'll give it a shot if no one beats me to it.

Working rust setup is currently hacked around on x32 builder which
consists of both rust.x32 and rust.x86_64 installed side by side. Few
remarks/thoughts:

- rust 1.47 on x32 built x86_64 compiler with target support for both
  x86_64 and x32 (two directories under /usr/lib/rustlib)

- rust 1.48 and higher appears to build x86_64 compiler with single
  target support: x32

- since parts of build process require building things for host (which
  is x86_64) it started to fail with "can't find crate for `std`" due to
  missing target for x86_64

- that's why installation of rust.x86_64 next to rust.x32 helped -- it
  provides x86_64 target support

- I haven't noticed that x32 patch was left commented out so I guess
  it's not required anymore?

As for solution not sure which one is least bad:

1. Just R: rust(x86-64) in rust(x86-x32)
2. Package just target support files and R: rust(x86-64) for the rest
3. Package target independently ie rust-target-x86_64 and require it in
   rust(x86-x32)
4. Other

Happy to pass over decision and implementation to somebody else :).


More information about the pld-devel-en mailing list