Hi Denis, Denis 'GNUtoo' Carikli <gnu...@cyberdimension.org> writes:
> On Sun, 19 Dec 2021 21:55:21 -0500 > Maxim Cournoyer <maxim.courno...@gmail.com> wrote: >> This is not a Rust but a (known) mrustc issue, which is used to >> bootstrap Rust starting at version 1.39.0. It currently only supports >> x86_64, although the author is interested in enabling support for >> other architectures (a WIP). > So that's why it also fails on i686. > > In that case would it be possible to revert to the way it > was before for non x86_64 architectures (so without mrustc), when it's > done to switch the remaining architectures to mrustc when they become > ready for that? Rust has been bootstrapped via mrustc since September 2018 (commit 3159ef7c99c646b78b04cedb1bd3525c301ef978); I don't think it supported non-x86_64 back then, it's just that Rust wasn't as widely used as it is today so it had a lesser impact. The impact of the lack of Rust on non-x86_64 architectures has been reduced on non-x86_64 architectures on the master branch by workarounds such as using polkit-duktape in place of the regular polkit to avoid requiring Rust for non-x86_64 architectures or an older librsvg that can be used to build GTK without SVG support. The i686 native build of rust 1.39 via mrustc nearly succeeds, but fails due to GCC using too much memory (more than the 4 GiB limit imposed by 32 bit addressing). With the growth of Rust, there's growing value in contributing testing and patches to mrustc, so if you'd like to help Rust on Guix, that's currently the best option to pursue (there's a #mrustc channel on libera.chat where the mrustc author is often available). There's also a wip-cross-built-rust branch that I had started; I stopped working on it after finding out rustc couldn't be built statically; other than that it was working to build rust things on non-x86_64 platforms. Thanks, Maxim