Created attachment 711732 [details] emerge --info Hi! During maxima-5.45.0 build it stops by dropping to interactive sbcl shell: >>> Verifying ebuild manifests >>> Emerging (1 of 1) sci-mathematics/maxima-5.45.0::local >>> Jobs: 0 of 1 complete, 1 running Load avg: 0.85, 0.23, 0.08 Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL. restarts (invokable by number or by possibly-abbreviated name): 0: [RETRY ] Retry ASDF operation. 1: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting the configuration. 2: [ABORT ] Exit debugger, returning to top level. (UIOP/PATHNAME:ENSURE-PATHNAME #P"${XDG_CONFIG_DIRS}/" :ON-ERROR (ERROR "In (~S ~S), invalid pathname ~*~S: ~*~?" UIOP/FILESYSTEM:GETENV-PATHNAMES "XDG_CONFIG_DIRS") :DEFAULTS NIL :TYPE NIL :DOT-DOT NIL :NAMESTRING NIL :EMPTY-IS-NIL T :WANT-PATHNAME NIL :WANT-LOGICAL NIL :WANT-PHYSICAL NIL :ENSURE-PHYSICAL NIL :WANT-RELATIVE NIL :WANT-ABSOLUTE T :ENSURE-ABSOLUTE NIL :ENSURE-SUBPATH NIL :WANT-NON-WILD NIL :WANT-WILD NIL :WILDEN NIL :WANT-FILE NIL :WANT-DIRECTORY NIL :ENSURE-DIRECTORY T :WANT-EXISTING NIL :ENSURE-DIRECTORIES-EXIST NIL :TRUENAME NIL :RESOLVE-SYMLINKS NIL :TRUENAMIZE NIL) error finding frame source: Bogus form-number: the source file has probably changed too much to cope with. source: NIL >>> Jobs: 0 of 1 complete, 1 running Load avg: 0.94, 0.36, 0.13 >>> Jobs: 0 of 1 complete, 1 running Load avg: 0.35, 0.30, 0.13; - Binary file /var/tmp/portage/sci-mathematics/maxima-5.45.0/work/maxima-5.45.0/src/binary-sbcl/server.fasl is old or does not exist. >>> Jobs: 0 of 1 complete, 1 running Load avg: 0.32, 0.30, 0.13^C Exiting on signal 2 Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL. restarts (invokable by number or by possibly-abbreviated name): 0: [CONTINUE] Return from SB-UNIX:SIGINT. 1: [ABORT ] Exit debugger, returning to top level. ("bogus stack frame") 0] ^C I had to kill sbcl multiple times (including -9) to finally stop this. First problem is that on error build drops to interactive shell prompt. This should never happen, please fix. Second problem is build failure. Likely it happens because both clisp and sbcl are enabled and maxima was not building nice with several clisp interpreters enabled at once as I remember. Maybe restrict it to using only one interpreter? (^^ ( ... ))
Created attachment 711741 [details] build.log.gz Nevermind ::local — it's just a copy from today's repo snapshot. On updating system I wan to keep an older one for a while due to unrelated reasons. Anyway this problem is reproducible on 5.44.0-r8.
When several lisp implementations are used, emerge sometimes fails in a difficult-to-predict manner. I've just successfully emerged maxima-5.45.0 with clisp clozurecl64 ecls sbcl; gcl sbcl fails, though gcl separately succeeds. I tried several more combinations, some of them fail. These failures are extremely difficult to reproduce and hence to debug :-(
I understand. In my case the problem is 100% reproducible, so I'll try to debug later, but my need-to-debug-after-upgrade list is growing too long :/ However, there is another issue here which should be easier to address: sbcl drops to interactive debug shell on errors and this interferes badly with normal emerge operation. Any way to force sbcl to be always non-interactive? There should be some option or redirection.
(In reply to Andrew Savchenko from comment #3) > sbcl > drops to interactive debug shell on errors and this interferes badly with > normal emerge operation. Cannot reproduce. Have never seen such behavior. You compile maxima with clisp and sbcl. What versions of clisp and sbcl? What happens if you compile maxima with sbcl only? Does -j1 help? As I said, I've successfully compiled maxima with ecls, clisp, clozurecl64, sbcl. Your set clisp, sbcl is a subset of mine. So, it seems really strange.
your emerge --info says sh dash 0.5.11.3-r1 while mine is sh bash 5.1_p8 Maybe, this is something dash-specific? Another difference is that I'm on ~amd64. I cannot test of ~x86.
What happens if you just say sbcl ? Does it work normally on a few trivial pure-lisp examples? (car '(a b c)) (cdr '(a b c)) (+ 2 2) etc. Maybe, re-installing sbcl can help?
(In reply to Andrey Grozin from comment #4) > (In reply to Andrew Savchenko from comment #3) > > sbcl > > drops to interactive debug shell on errors and this interferes badly with > > normal emerge operation. > Cannot reproduce. Have never seen such behavior. > > You compile maxima with clisp and sbcl. What versions of clisp and sbcl? The latest ones: clisp-2.49.92 sbcl-2.1.4 > What happens if you compile maxima with sbcl only? Does -j1 help? No, same problem. > As I said, I've successfully compiled maxima with ecls, clisp, clozurecl64, > sbcl. Your set clisp, sbcl is a subset of mine. So, it seems really strange. (In reply to Andrey Grozin from comment #5) > your emerge --info says > sh dash 0.5.11.3-r1 > while mine is > sh bash 5.1_p8 > Maybe, this is something dash-specific? I switched for bash for testing, changes nothing: the problem is still here. > Another difference is that I'm on ~amd64. I cannot test of ~x86. Right now I can't test on ~amd64, maybe later next month. Anyway my ~amd64 hosts are very different in configuration from this one. (In reply to Andrey Grozin from comment #6) > What happens if you just say > sbcl > ? Does it work normally on a few trivial pure-lisp examples? > (car '(a b c)) > (cdr '(a b c)) > (+ 2 2) > etc. Seems to work: $ sbcl This is SBCL 2.1.4, an implementation of ANSI Common Lisp. More information about SBCL is available at <http://www.sbcl.org/>. SBCL is free software, provided as is, with absolutely no warranty. It is mostly in the public domain; some portions are provided under BSD-style licenses. See the CREDITS and COPYING files in the distribution for more information. * (car '(a b c)) A * (cdr '(a b c)) (B C) * (+ 2 2) 4 * > Maybe, re-installing sbcl can help? It was built just a few days ago. Now rebuild fails. I'll look closer into this later and will open a new bug if this is not a problem of my setup.
(In reply to Andrew Savchenko from comment #7) > It was built just a few days ago. Now rebuild fails. I'll look closer into > this later and will open a new bug if this is not a problem of my setup. I have tests disabled in FEATURES, but sbcl still builds and runs them for some reason. Some of they fail, so build fails. I'll open a separate bug for this after some further investigation.
(In reply to Andrew Savchenko from comment #8) > I have tests disabled in FEATURES, but sbcl still builds and runs them for > some reason. Some of they fail, so build fails. I'll open a separate bug for > this after some further investigation. See bug 792729
Does https://bugs.gentoo.org/777153#c3 help?
(In reply to Sam James from comment #10) > Does https://bugs.gentoo.org/777153#c3 help? No, still falls to interactive shell: >>> Jobs: 1 of 2 complete, 1 running Load avg: 0.82, 0.34, 0.14 Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL. restarts (invokable by number or by possibly-abbreviated name): 0: [RETRY ] Retry ASDF operation. 1: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting the configuration. 2: [ABORT ] Exit debugger, returning to top level. (UIOP/PATHNAME:ENSURE-PATHNAME #P"${XDG_CONFIG_DIRS}/" :ON-ERROR (ERROR "In (~S ~S), invalid pathname ~*~S: ~*~?" UIOP/FILESYSTEM:GETENV-PATHNAMES "XDG_CONFIG_ DIRS") :DEFAULTS NIL :TYPE NIL :DOT-DOT NIL :NAMESTRING NIL :EMPTY-IS-NIL T :WANT-PATHNAME NIL :WANT-LOGICAL NIL :WANT-PHYSICAL NIL :ENSURE-PHYSICAL NIL :WANT- RELATIVE NIL :WANT-ABSOLUTE T :ENSURE-ABSOLUTE NIL :ENSURE-SUBPATH NIL :WANT-NON-WILD NIL :WANT-WILD NIL :WILDEN NIL :WANT-FILE NIL :WANT-DIRECTORY NIL :ENSURE -DIRECTORY T :WANT-EXISTING NIL :ENSURE-DIRECTORIES-EXIST NIL :TRUENAME NIL :RESOLVE-SYMLINKS NIL :TRUENAMIZE NIL) error finding frame source: Bogus form-number: the source file has probably changed too much to cope with. source: NIL >>> Jobs: 1 of 2 complete, 1 running Load avg: 0.00, 0.00, 0.00^C Maybe it is being called during maxima build in a different way, because I see no --non-interactive option to sbcl: # pgrep -a sbcl 170819 sbcl --noinform --noprint
Please try sbcl-2.1.5. For me it seems good enough, because it successfully compiles maxima and fricas. Sorry, I cannot help more, because I cannot reproduce your problem.
(In reply to Andrey Grozin from comment #12) > Please try sbcl-2.1.5. Will try later (maybe in a couple of weeks or so), right now the system is busy with other packages. > For me it seems good enough, because it successfully > compiles maxima and fricas. Sorry, I cannot help more, because I cannot > reproduce your problem. But you can add --non-interactive option to sbcl arguments. At least this will help with half of the problem.