[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [EXTERNAL] Re: Problems compiling Guile for Solaris 11.4 SPARC
From: |
Olsson John |
Subject: |
RE: [EXTERNAL] Re: Problems compiling Guile for Solaris 11.4 SPARC |
Date: |
Tue, 30 May 2023 15:14:52 +0000 |
Thank you Maxime for your explanation! I suspected as much, but could not find
any information regarding which hardware platforms and operating systems are
supported by Guile. :-)
> As you just demonstrated, ‘Sparc is dead’ is false, so this should be
> reverted.
Actually, we are investigating ways of migrating away from Solaris to Linux and
at the same time modernize our build system. The reason for our interest in
Guile is that GNU Make allows Guile to be used to extend GNU Make with new
functionality. And IMHO I have to concur with the author of the commit removing
SPARC support from Guile, although it is a pity that it happened before we were
able to migrate away from Solaris SPARC. ;-)
-----Original Message-----
From: Maxime Devos <maximedevos@telenet.be>
Sent: den 30 maj 2023 00:29
To: Olsson John <john.olsson@saabgroup.com>; guile-user@gnu.org
Subject: [EXTERNAL] Re: Problems compiling Guile for Solaris 11.4 SPARC
Op 23-05-2023 om 15:28 schreef Olsson John via General Guile related
discussions:
> Hi!
>
> I'm trying to compile Guile 3.0.8 for Solaris 11.4 and I get a core
> dump for STAGE0. The output I get is this (paths to build folder has
> been adjusted to hide my username)
>
> Making all in stage0
> make[2]: Entering directory 'guile-3.0.8/stage0'
> GUILE_BOOTSTRAP_STAGE=stage0 ../meta/build-env guild compile
> --target="sparc-sun-solaris2.11" -W0 -O1 -L "guile-3.0.8/module" -o
> "ice-9/eval.go" "../module/ice-9/eval.scm"
> Pre-boot error; key: (#f "Wrong type to apply: ~S" (#f) (#f) (#f))
> make[2]: Leaving directory 'guile-3.0.8/stage0'
> make[1]: *** [Makefile:2061: all-recursive] Error 1
> make[1]: Leaving directory 'guile-3.0.8'
> make: *** [Makefile:1947: all] Error 2
>
> Any ideas on what is going wrong?
>
> $ uname -a
> SunOS fnord 5.11 11.4.56.138.2 sun4v sparc sun4v non-global-zone
1. Guile 3.0.8 is out-of-date, best update to 3.0.9.
2. Sparc support was removed in:
commit 570f361c6c8308ddc574d6308b50263175cae59e
Author: Andy Wingo <wingo@igalia.com>
Date: Wed May 8 21:41:46 2019 +0200
Remove Sparc support
Sadly, this is a dead architecture, without an official Debian port.
Rest in peace!
As you just demonstrated, ‘Sparc is dead’ is false, so this should
be reverted. (That's only the JIT though (not the (p-code)
interpreter), so that won't solve your problem; I recommend delaying
this until later.)
3. Unfortunately no backtrace is available.
Perhaps you could run
GUILE_BOOTSTRAP_STAGE=stage0 ../meta/build-env guild compile
--target="sparc-sun-solaris2.11" -W0 -O1 -L "guile-3.0.8/module" -o
"ice-9/eval.go" "../module/ice-9/eval.scm"
under the gdb or the like (with a break on scm_throw) to
see if the backtrace in gdb is informative.
That's the C backtrace, not the Scheme backtrace, so it might be
rather unclear. To avoid this, you could modify scm_throw to
run scm_backtrace() after
scm_puts ("Pre-boot error; key: ", port);
scm_write (key, port);
scm_puts (", args: ", port);
scm_write (args, port);
. I don't know if scm_backtrace is functional in pre-boot, though.
Best regards,
Maxime Devos.