ciel-lang / CIEL

CIEL Is an Extended Lisp. Scripting with batteries included.
http://ciel-lang.org
346 stars 16 forks source link

Error installing / building ciel on Archlinux #41

Open nixfreak opened 10 months ago

nixfreak commented 10 months ago

git clone https://github.com/ciel-lang/CIEL ~/quicklisp/local-projects/CIEL ( cd ~/quicklisp/local-projects/CIEL/ && make ql-deps ) rlwrap sbcl (ql-dist:install-dist "http://dist.ultralisp.org/" :prompt nil) (ql:quickload "ceil")

sudo pacman -S inotify-tools
pacman -Ss libzstd
pacman -Ss libmagic
( cd ~/common-lisp/ && wget https://asdf.common-lisp.dev/archives/asdf-3.3.5.tar.gz  && tar -xvf asdf-3.3.5.tar.gz && mv asdf-3.3.5 asdf )
rlwrap sbcl

I have tried to load use ultralisp and made sure asdf is up to date. sbcl --version SBCL 2.3.11

uname -a Linux blackpen-arch-vm 6.6.6-arch1-1 #1 SMP PREEMPT_DYNAMIC Mon, 11 Dec 2023 11:48:23 +0000 x86_64 GNU/Linux

I have not tried to run just the binary yet.

ERROR OUTPUT

; caught ERROR:
;   READ error during COMPILE-FILE:
;   
;     Symbol "*DEFAULT-THEME*" not found in the NODGUI package.
;   
;       Line: 3, Column: 28, File-Position: 47
;   
;       Stream: #<SB-INT:FORM-TRACKING-STREAM for "file /home/blackpen/quicklisp/local-projects/CIEL/src/gui.lisp" {10036B8913}>

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

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" "gui">.
  1: [ACCEPT                       ] Continue, treating
                                     compiling #<CL-SOURCE-FILE "ciel" "src" "gui">
                                     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" "gui">)))
   source: (ERROR 'COMPILE-FILE-ERROR :CONTEXT-FORMAT CONTEXT-FORMAT
                  :CONTEXT-ARGUMENTS CONTEXT-ARGUMENTS)
0] 1

debugger invoked on a SB-INT:SIMPLE-FILE-ERROR in thread
#<THREAD tid=40965 "main thread" RUNNING {1001448133}>:
  Couldn't load
  #P"/home/blackpen/.cache/common-lisp/sbcl-2.3.11-linux-x64/home/blackpen/quicklisp/local-projects/CIEL/src/gui.fasl":
  file does not exist.

Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.

restarts (invokable by number or by possibly-abbreviated name):
  0: [TRY-RECOMPILING              ] Recompile gui and try loading it again
  1: [RETRY                        ] Retry
                                     loading FASL for #<CL-SOURCE-FILE "ciel" "src" "gui">.
  2: [ACCEPT                       ] Continue, treating
                                     loading FASL for #<CL-SOURCE-FILE "ciel" "src" "gui">
                                     as having been successful.
  3:                                 Retry ASDF operation.
  4: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting the
                                     configuration.
  5:                                 Retry ASDF operation.
  6:                                 Retry ASDF operation after resetting the
                                     configuration.
  7: [ABORT                        ] Give up on "ciel"
  8: [REGISTER-LOCAL-PROJECTS      ] Register local projects and try again.
  9:                                 Exit debugger, returning to top level.

(LOAD #P"/home/blackpen/.cache/common-lisp/sbcl-2.3.11-linux-x64/home/blackpen/quicklisp/local-projects/CIEL/src/gui.fasl" :VERBOSE NIL :PRINT NIL :IF-DOES-NOT-EXIST :ERROR :EXTERNAL-FORMAT :DEFAULT)
0] 1

debugger invoked on a SB-INT:SIMPLE-FILE-ERROR in thread
#<THREAD tid=40965 "main thread" RUNNING {1001448133}>:
  Couldn't load
  #P"/home/blackpen/.cache/common-lisp/sbcl-2.3.11-linux-x64/home/blackpen/quicklisp/local-projects/CIEL/src/gui.fasl":
  file does not exist.

Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.

restarts (invokable by number or by possibly-abbreviated name):
  0: [TRY-RECOMPILING              ] Recompile gui and try loading it again
  1: [RETRY                        ] Retry
                                     loading FASL for #<CL-SOURCE-FILE "ciel" "src" "gui">.
  2: [ACCEPT                       ] Continue, treating
                                     loading FASL for #<CL-SOURCE-FILE "ciel" "src" "gui">
                                     as having been successful.
  3:                                 Retry ASDF operation.
  4: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting the
                                     configuration.
  5:                                 Retry ASDF operation.
  6:                                 Retry ASDF operation after resetting the
                                     configuration.
  7: [ABORT                        ] Give up on "ciel"
  8: [REGISTER-LOCAL-PROJECTS      ] Register local projects and try again.
  9:                                 Exit debugger, returning to top level.

(LOAD #P"/home/blackpen/.cache/common-lisp/sbcl-2.3.11-linux-x64/home/blackpen/quicklisp/local-projects/CIEL/src/gui.fasl" :VERBOSE NIL :PRINT NIL :IF-DOES-NOT-EXIST :ERROR :EXTERNAL-FORMAT :DEFAULT)
0] 2
; 
; compilation unit finished
;   caught 1 fatal ERROR condition
;   caught 1 ERROR condition

("ciel")
Gleefre commented 10 months ago

It seems like you have an outdated version of nodgui; and maybe of the quicklisp distribution.

What is your quicklisp dists version?

(ql:dist-version "quicklisp")
; => should be "2023-10-21"

If it is outdated, you should update it with

(ql:update-all-dists)
; or just quicklisp
; (ql:update-dist "quicklisp")

If it is not outdated, there is a chance that nodgui is installed not from quicklisp; you can find where it is with

(ql:where-is-system :nodgui)
; => #P"/home/user/quicklisp/dists/quicklisp/software/nodgui-20231021-git/"

If the path differs, try deleting the local copy.

Quicklisp might not be able to find all local project "lazily", you can reregister local projects with

(ql:register-local-projects)

Finally, there is also a chance that compiled .fasls are corrupted, you could either delete them all, or just for the nodgui library

# WARNING: Be careful with rm -r, as a small typo might lead to deletion of lots of files.
# use -I to prompt once before deletion of the whole folder.
rm -rI ~/.cache/common-lisp/sbcl-2.3.11-linux-x64
rm -rI ~/.cache/common-lisp/sbcl-2.3.11-linux-x64/path/to/nodgui
Gleefre commented 10 months ago

P.S.

You can also check the version of nodgui easily with

(asdf:component-version (asdf:find-system :nodgui))
; => "0.4.8.2"

I'm not sure about the exact version requirement, but it should be at least 0.4.6.1

vindarel commented 10 months ago

Hi, gleefree is spot-on. We added the nodgui:*default-theme* variable on May, 31st. CIEL simply uses it to define a better-looking theme by default. You need either:

(and as an alternative installation method there is the Dockerfile)

BanchouBoo commented 9 months ago

I had this same issue, I was able to solve it by removing ultralisp as a distribution from quicklisp then installing via make build instead. The nodgui version with ultralisp was 0.3.0: https://ultralisp.org/projects/lisp-mirror/nodgui

vindarel commented 8 months ago

I had this same issue, I was able to solve it by removing ultralisp as a distribution from quicklisp then installing via make build instead. The nodgui version with ultralisp was 0.3.0: https://ultralisp.org/projects/lisp-mirror/nodgui

thanks for the report, lisp-mirror/nodgui isn't the official repository and was out of sync after the nodgui move to codeberg, it is now back on tracks.