ciel-lang/CIEL

Symbol "SYSTEM-VERSION" not found in the ASDF/INTERFACE package(generic-ciel)

glyh opened this issue · 6 comments

glyh commented

Here's the verbose error message:

; Loading "ciel"
[package ciel]....................................
[package ciel-user]...............................
[package generic-ciel].;
; caught ERROR:
;   READ error during COMPILE-FILE:
;
;     Symbol "SYSTEM-VERSION" not found in the ASDF/INTERFACE package.
;
;       Line: 434, Column: 52, File-Position: 14750
;
;       Stream: #<SB-INT:FORM-TRACKING-STREAM for "file /home/lyh/.local/share/common-lisp/source/CIEL/src/ciel.lisp" {1001B9FCF3}>

debugger invoked on a UIOP/LISP-BUILD:COMPILE-FILE-ERROR in thread
#<THREAD "main thread" RUNNING {1001834253}>:
  COMPILE-FILE-ERROR while compiling #<CL-SOURCE-FILE "ciel" "src" "ciel">

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
                                     compiling #<CL-SOURCE-FILE "ciel" "src" "ciel">.
  1: [ACCEPT                       ] Continue, treating
                                     compiling #<CL-SOURCE-FILE "ciel" "src" "ciel">
                                     as having been successful.
  2:                                 Retry ASDF operation.
  3: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting the
                                     configuration.
  4:                                 Retry ASDF operation.
  5:                                 Retry ASDF operation after resetting the
                                     configuration.
  6: [ABORT                        ] Give up on "ciel"
  7: [REGISTER-LOCAL-PROJECTS      ] Register local projects and try again.
  8:                                 Exit debugger, returning to top level.

(UIOP/LISP-BUILD:CHECK-LISP-COMPILE-RESULTS NIL T T "~/asdf-action::format-action/" ((#<ASDF/LISP-ACTION:COMPILE-OP > . #<ASDF/LISP-ACTION:CL-SOURCE-FILE "ciel" "src" "ciel">)))
   source: (ERROR 'COMPILE-FILE-ERROR :CONTEXT-FORMAT CONTEXT-FORMAT
                  :CONTEXT-ARGUMENTS CONTEXT-ARGUMENTS)
0]
;
; compilation unit aborted
;   caught 2 fatal ERROR conditions
;   caught 1 ERROR condition

("ciel")

This happens at (ql:quickload "ciel") ?

strange. What's your SBCL version? And ASDF version? (asdf:asdf-version)

And Quicklisp version ? (ql:dist-version "quicklisp")

glyh commented

SBCL 2.1.11, ASDF 3.3.1 and Quiklisp 2021-12-09. I did not install CIEL to ~/quicklisp though, here's my sbclrc:

#-quicklisp
  (let ((quicklisp-init (merge-pathnames "/usr/lib/quicklisp/setup.lisp"
                                         (user-homedir-pathname))))
    (when (probe-file quicklisp-init)
      (load quicklisp-init)))
  (pushnew #P"~/Documents/CS/projects/cl" ql:*local-project-directories*)

I installed quicklisp from AUR, and I reckon there's no problem:

 (ql:where-is-system "ciel") ;=> #P"/home/lyh/Documents/CS/projects/cl/CIEL/"

I also tried to cd into CIEL's base dir and make build, here's what I got:

SBCL Run log
sbcl --non-interactive \
	--load ciel.asd \
	--eval '(ql:quickload :swank)' \
     --eval '(ql:quickload :ciel)' \
     --eval '(ql:quickload :ciel/repl)' \
     --eval '(asdf:make :ciel/repl)' \
     --eval '(quit)'
This is SBCL 2.1.11, 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.
To load "swank":
  Load 1 ASDF system:
    swank
; Loading "swank"
.
To load "ciel":
  Load 1 ASDF system:
    ciel
; Loading "ciel"
...............Unhandled SB-INT:SIMPLE-FILE-ERROR in thread #<SB-THREAD:THREAD "main thread" RUNNING
                                                {1004E60233}>:
  Failed to find the TRUENAME of /usr/share/common-lisp/source/cl-ppcre/cl-ppcre-unicode/packages.lisp:

    No such file or directory

Backtrace for: #<SB-THREAD:THREAD "main thread" RUNNING {1004E60233}>
0: (SB-DEBUG::DEBUGGER-DISABLED-HOOK #<SB-INT:SIMPLE-FILE-ERROR "Failed to find the ~A of ~A" {1005827F73}> #<unused argument> :QUIT T)
1: (SB-DEBUG::RUN-HOOK *INVOKE-DEBUGGER-HOOK* #<SB-INT:SIMPLE-FILE-ERROR "Failed to find the ~A of ~A" {1005827F73}>)
2: (INVOKE-DEBUGGER #<SB-INT:SIMPLE-FILE-ERROR "Failed to find the ~A of ~A" {1005827F73}>)
3: (ERROR SB-INT:SIMPLE-FILE-ERROR :PATHNAME #P"/usr/share/common-lisp/source/cl-ppcre/cl-ppcre-unicode/packages.lisp" :MESSAGE "No such file or directory" :FORMAT-CONTROL "Failed to find the ~A of ~A" :FORMAT-ARGUMENTS (:TRUENAME #P"/usr/share/common-lisp/source/cl-ppcre/cl-ppcre-unicode/packages.lisp"))
4: (SB-IMPL::FILE-PERROR #P"/usr/share/common-lisp/source/cl-ppcre/cl-ppcre-unicode/packages.lisp" 2 "Failed to find the ~A of ~A" :TRUENAME #P"/usr/share/common-lisp/source/cl-ppcre/cl-ppcre-unicode/packages.lisp")
5: (SB-IMPL::QUERY-FILE-SYSTEM #P"/usr/share/common-lisp/source/cl-ppcre/cl-ppcre-unicode/packages.lisp" :TRUENAME T)
6: (TRUENAME #P"/usr/share/common-lisp/source/cl-ppcre/cl-ppcre-unicode/packages.lisp")
7: (SB-C::VERIFY-SOURCE-FILE #P"/usr/share/common-lisp/source/cl-ppcre/cl-ppcre-unicode/packages.lisp")
8: (SB-C::%COMPILE-FILES (#P"/usr/share/common-lisp/source/cl-ppcre/cl-ppcre-unicode/packages.lisp") :UTF-8 T #P"/home/lyh/.cache/common-lisp/sbcl-2.1.11-linux-x64/usr/share/common-lisp/source/cl-ppcre/cl-ppcre-unicode/packages-tmpGHU3ALSW.fasl" NIL NIL)
9: (COMPILE-FILE #P"/usr/share/common-lisp/source/cl-ppcre/cl-ppcre-unicode/packages.lisp" :OUTPUT-FILE #P"/home/lyh/.cache/common-lisp/sbcl-2.1.11-linux-x64/usr/share/common-lisp/source/cl-ppcre/cl-ppcre-unicode/packages-tmpGHU3ALSW.fasl" :VERBOSE NIL :PRINT NIL :EXTERNAL-FORMAT :UTF-8 :PROGRESS NIL :TRACE-FILE NIL :BLOCK-COMPILE NIL :ENTRY-POINTS NIL :EMIT-CFASL NIL)
10: (UIOP/UTILITY:CALL-WITH-MUFFLED-CONDITIONS #<FUNCTION (LAMBDA NIL :IN UIOP/LISP-BUILD:COMPILE-FILE*) {10058272FB}> NIL)
11: (UIOP/PATHNAME:CALL-WITH-ENOUGH-PATHNAME #P"/usr/share/common-lisp/source/cl-ppcre/cl-ppcre-unicode/packages.lisp" NIL #<FUNCTION (LAMBDA (UIOP/LISP-BUILD::INPUT-FILE) :IN UIOP/LISP-BUILD:COMPILE-FILE*) {100582727B}>)
12: (UIOP/LISP-BUILD:COMPILE-FILE* #P"/usr/share/common-lisp/source/cl-ppcre/cl-ppcre-unicode/packages.lisp" :OUTPUT-FILE #P"/home/lyh/.cache/common-lisp/sbcl-2.1.11-linux-x64/usr/share/common-lisp/source/cl-ppcre/cl-ppcre-unicode/packages.fasl" :EXTERNAL-FORMAT :UTF-8 :WARNINGS-FILE NIL)
13: (ASDF/LISP-ACTION:PERFORM-LISP-COMPILATION #<ASDF/LISP-ACTION:COMPILE-OP > #<ASDF/LISP-ACTION:CL-SOURCE-FILE "cl-ppcre-unicode" "cl-ppcre-unicode" "packages">)
14: ((SB-PCL::EMF ASDF/ACTION:PERFORM) #<unused argument> #<unused argument> #<ASDF/LISP-ACTION:COMPILE-OP > #<ASDF/LISP-ACTION:CL-SOURCE-FILE "cl-ppcre-unicode" "cl-ppcre-unicode" "packages">)
15: ((LAMBDA NIL :IN ASDF/ACTION:CALL-WHILE-VISITING-ACTION))
16: ((:METHOD ASDF/ACTION:PERFORM-WITH-RESTARTS :AROUND (T T)) #<ASDF/LISP-ACTION:COMPILE-OP > #<ASDF/LISP-ACTION:CL-SOURCE-FILE "cl-ppcre-unicode" "cl-ppcre-unicode" "packages">) [fast-method]
17: ((:METHOD ASDF/PLAN:PERFORM-PLAN (T)) #<ASDF/PLAN:SEQUENTIAL-PLAN {1001DDB813}>) [fast-method]
18: ((FLET SB-C::WITH-IT :IN SB-C::%WITH-COMPILATION-UNIT))
19: ((:METHOD ASDF/PLAN:PERFORM-PLAN :AROUND (T)) #<ASDF/PLAN:SEQUENTIAL-PLAN {1001DDB813}>) [fast-method]
20: ((:METHOD ASDF/OPERATE:OPERATE (ASDF/OPERATION:OPERATION ASDF/COMPONENT:COMPONENT)) #<ASDF/LISP-ACTION:LOAD-OP > #<ASDF/SYSTEM:SYSTEM "ciel"> :PLAN-CLASS NIL :PLAN-OPTIONS NIL) [fast-method]
21: ((SB-PCL::EMF ASDF/OPERATE:OPERATE) #<unused argument> #<unused argument> #<ASDF/LISP-ACTION:LOAD-OP > #<ASDF/SYSTEM:SYSTEM "ciel"> :VERBOSE NIL)
22: ((LAMBDA NIL :IN ASDF/OPERATE:OPERATE))
23: ((:METHOD ASDF/OPERATE:OPERATE :AROUND (T T)) #<ASDF/LISP-ACTION:LOAD-OP > #<ASDF/SYSTEM:SYSTEM "ciel"> :VERBOSE NIL) [fast-method]
24: ((SB-PCL::EMF ASDF/OPERATE:OPERATE) #<unused argument> #<unused argument> ASDF/LISP-ACTION:LOAD-OP "ciel" :VERBOSE NIL)
25: ((LAMBDA NIL :IN ASDF/OPERATE:OPERATE))
26: ((:METHOD ASDF/OPERATE:OPERATE :AROUND (T T)) ASDF/LISP-ACTION:LOAD-OP "ciel" :VERBOSE NIL) [fast-method]
27: (ASDF/SESSION:CALL-WITH-ASDF-SESSION #<FUNCTION (LAMBDA NIL :IN ASDF/OPERATE:OPERATE) {1001D424FB}> :OVERRIDE T :KEY NIL :OVERRIDE-CACHE T :OVERRIDE-FORCING NIL)
28: ((LAMBDA NIL :IN ASDF/OPERATE:OPERATE))
29: (ASDF/SESSION:CALL-WITH-ASDF-SESSION #<FUNCTION (LAMBDA NIL :IN ASDF/OPERATE:OPERATE) {1001CA68AB}> :OVERRIDE NIL :KEY NIL :OVERRIDE-CACHE NIL :OVERRIDE-FORCING NIL)
30: ((:METHOD ASDF/OPERATE:OPERATE :AROUND (T T)) ASDF/LISP-ACTION:LOAD-OP "ciel" :VERBOSE NIL) [fast-method]
31: (ASDF/OPERATE:LOAD-SYSTEM "ciel" :VERBOSE NIL)
32: (QUICKLISP-CLIENT::CALL-WITH-MACROEXPAND-PROGRESS #<FUNCTION (LAMBDA NIL :IN QUICKLISP-CLIENT::APPLY-LOAD-STRATEGY) {1001CA67FB}>)
33: (QUICKLISP-CLIENT::AUTOLOAD-SYSTEM-AND-DEPENDENCIES "ciel" :PROMPT NIL)
34: ((:METHOD QL-IMPL-UTIL::%CALL-WITH-QUIET-COMPILATION (T T)) #<unused argument> #<FUNCTION (FLET QUICKLISP-CLIENT::QL :IN QUICKLISP-CLIENT:QUICKLOAD) {1001A7BC2B}>) [fast-method]
35: ((:METHOD QL-IMPL-UTIL::%CALL-WITH-QUIET-COMPILATION :AROUND (QL-IMPL:SBCL T)) #<QL-IMPL:SBCL {1002EE6333}> #<FUNCTION (FLET QUICKLISP-CLIENT::QL :IN QUICKLISP-CLIENT:QUICKLOAD) {1001A7BC2B}>) [fast-method]
36: ((:METHOD QUICKLISP-CLIENT:QUICKLOAD (T)) :CIEL :PROMPT NIL :SILENT NIL :VERBOSE NIL) [fast-method]
37: (QL-DIST::CALL-WITH-CONSISTENT-DISTS #<FUNCTION (LAMBDA NIL :IN QUICKLISP-CLIENT:QUICKLOAD) {1001A7589B}>)
38: (SB-INT:SIMPLE-EVAL-IN-LEXENV (QUICKLISP-CLIENT:QUICKLOAD :CIEL) #<NULL-LEXENV>)
39: (EVAL (QUICKLISP-CLIENT:QUICKLOAD :CIEL))
40: (SB-IMPL::PROCESS-EVAL/LOAD-OPTIONS ((:LOAD . "ciel.asd") (:EVAL . "(ql:quickload :swank)") (:EVAL . "(ql:quickload :ciel)") (:EVAL . "(ql:quickload :ciel/repl)") (:EVAL . "(asdf:make :ciel/repl)") (:EVAL . "(quit)") (:QUIT)))
41: (SB-IMPL::TOPLEVEL-INIT)
42: ((FLET SB-UNIX::BODY :IN SB-IMPL::START-LISP))
43: ((FLET "WITHOUT-INTERRUPTS-BODY-3" :IN SB-IMPL::START-LISP))
44: (SB-IMPL::START-LISP)

unhandled condition in --disable-debugger mode, quitting
;
; compilation unit aborted
;   caught 1 fatal ERROR condition
make: *** [Makefile:12: build] Error 1
glyh commented

I'm closing this because I found roswell can easily manage my environment and fix this. :)

Cool! Can you give the commands you used for Roswell for future readers? thanks

(maybe cl-ppcre-unicode should be explicitly listed as a dependency?)

glyh commented

Sure! First run these in the shell

ros use sbcl-bin # If not yet install any implementation
ros install ciel-lang/CIEL
ros run

Then in the REPL:

(ql:quickload "ciel")
(in-package :ciel-user)
glyh commented

BTW, though this is now working, the REPL build is not working on roswell, because some of the paths has been hard-coded.
Plus, I suggest migrate the project to support roswell as default because it's more firendly to newbies like me.