-
-
Notifications
You must be signed in to change notification settings - Fork 662
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
rktboot error on aarch64-linux #3948
Comments
I researched what causes this error, and it seems to be a Guix problem. The package 'chez-scheme-for-racket-bootstrap-bootfiles' (where the above error occurs) bypasses the standard build process, but fails to set the machine architecture when the arch is natively supported by the Racket fork of Chez but not the original Chez distribution. |
Thanks @garrgravarr for digging deeper in this! Guix may want to adopt the patch you sent, but I think this is a Racket/ racket/racket/src/rktboot/config.rkt Lines 18 to 31 in e8b957c
This code will fail on any architecture but The simple solution would be to use Of course, parsing more cases of I have written code to translate from more usual (say, |
Tangentially, one of the notable differences between upstream Chez Scheme and Racket's branch is the change from a fixed, closed set of supported os–architecture pairs to a more open set. The |
* gnu/packages/chez.scm (chez-scheme-for-racket-bootstrap-bootfiles): Temporary change for build on aarch64, making racket available on aarch64. Architecture autodetect in rktboot only addresses x86 archs, so far. This work-around sets the architecture, looked up in translation table, explicitly. The long term solution should be to fix rktboot to include other natively supported architectures in the autodetect mechanism. cf. racket/racket#3948 [arguments] use --machine even when architecture is supported by Racket's fork of ChezScheme. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Related to https://issues.guix.gnu.org/62231 Related to racket#3948
Related to https://issues.guix.gnu.org/62231 Related to #3948
According to Guix CI, bootstrapping Raket's Chez Scheme fork fails with an error from
string-append
. Here's the tail of the build log:The offending
string-append
seems to be here:racket/racket/src/ChezScheme/rktboot/machine-def.rkt
Line 10 in 4f0e170
I don't know if
target-machine
being#f
is indicative of a broader problem inferring the target machine or not. A further complication is that I don't have an aarch64-linux setup myself, though I could try to get something working via QEMU.I hope this problem isn't specific to Guix, but the build is driven by this Guile code, which I can (hopefully) explain if necessary: https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/racket.scm
The text was updated successfully, but these errors were encountered: