Skip to content
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

log4cl is outdated in quicklisp and won't compile on newer versions of SBCL #24

Closed
cinerion opened this issue May 8, 2023 · 5 comments

Comments

@cinerion
Copy link
Contributor

cinerion commented May 8, 2023

When i was trying to build it on my system (Void Linux), i got an error during the compilation of log4cl. Here are the specifics:

OS: Linux 6.1.25_1
Lisp: SBCL 2.3.4.void.1
ASDF: 3.3.6
Quicklisp: (#<DIST quicklisp 2023-02-15>) (most recent at the moment)

When running make build i get the following output:

[package log4cl.package-setup]....................
[package log4cl-impl]...;
; caught ERROR:
;   READ error during COMPILE-FILE:
;
;     Lock on package SB-C violated when interning LAMBDA-PARENT while in package
;     LOG4CL-IMPL.
;   See also:
;     The SBCL Manual, Node "Package Locks"
;
;     (in form starting at line: 99, column: 0, position: 3779)
Unhandled UIOP/LISP-BUILD:COMPILE-FILE-ERROR in thread #<SB-THREAD:THREAD tid=20172 "main thread" RUNNING
                                                          {1001080073}>:
  COMPILE-FILE-ERROR while
  compiling #<CL-SOURCE-FILE "log4cl" "src" "naming-sbcl">

Thank you very much for all the effort that goes into making CIEL.

@vindarel
Copy link
Contributor

vindarel commented May 8, 2023

Thank you!

I suppose having a newer log4cl has no backward consequences, so this looks good to me.

@cinerion
Copy link
Contributor Author

cinerion commented May 8, 2023

I have tested the PR on my debian 11 machine and it compiles without issue:

OS: Linux 5.10.0-22-amd64
Lisp: SBCL 2.1.1.debian
ASDF: 3.3.6
Quicklisp: (#<DIST quicklisp 2023-02-15>)

However, when i was compiling it i ran into a missing library at the final step

#P"/home/x/quicklisp/local-projects/CIEL/bin/ciel"
 ==> Running load hooks.
 ==> Gathering system information.
   -> Will load the following foreign libs on boot:
      (#<DEPLOY:LIBRARY READLINE> #<DEPLOY:LIBRARY LIBRT>
       #<DEPLOY:LIBRARY LIBOSICAT> #<DEPLOY:LIBRARY LIBMAGIC>
       #<DEPLOY:LIBRARY LIBSSL> #<DEPLOY:LIBRARY LIBCRYPTO>)
 ==> Deploying files to /home/x/quicklisp/local-projects/CIEL/bin/
WARNING: redefining ASDF/UPGRADE:UPGRADE-ASDF in DEFUN
Unhandled SIMPLE-ERROR in thread #<SB-THREAD:THREAD "main thread" RUNNING
                                    {1001880173}>:
  #<LIBRARY COMPRESSION-LIB> does not have a known shared library file path.

I was missing zlib.so, This was solved by installing zlib1g-dev. This was rather fresh machine so i don't know how likely is that other people don't have it installed already, but it might me a good idea to add it to the list of system dependencies. Should i open a new issue/PR for this?

@vindarel
Copy link
Contributor

vindarel commented May 8, 2023

Merged, thanks again. I am looking forward to see what you'll do with CIEL. If you end up with useful scripts, keep up the habit and share :)

I was missing zlib.so, This was solved by installing zlib1g-dev

Ah, I now understand why I didn't see this issue in my builds: the Docker image I use has the required dependencies baked in (https://gitlab.common-lisp.net/cl-docker-images/sbcl).

But, I think it is libzstd-dev we need?

Related to #23

good idea to add it to the list of system dependencies

Yes, though straightforward, I can do it later but I'd merge a PR.

@vindarel
Copy link
Contributor

vindarel commented May 8, 2023

ps: you are more than welcome to add a gitlab CI step to produce a binary for Void.

@cinerion
Copy link
Contributor Author

cinerion commented May 9, 2023

Moved discussion to #23.

If you end up with useful scripts, keep up the habit and share :)

Will do :)

ps: you are more than welcome to add a gitlab CI step to produce a binary for Void.

Great!, i'll see to it later when i have read how gitlab's CI instructions work.

@cinerion cinerion closed this as completed May 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants