[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#68764: ASDF can't load sbcl-clx-truetype installed through Guix
From: |
John Kehayias |
Subject: |
bug#68764: ASDF can't load sbcl-clx-truetype installed through Guix |
Date: |
Sat, 27 Jan 2024 21:07:10 +0000 |
Hi Lars,
On Sat, Jan 27, 2024 at 04:57 PM, Lars Rustand wrote:
> Trying to load clx-truetype with ASDF in SBCL fails because of read-only
> filesystem. This is caused by the store being read-only and ASDF is
> trying to save the compiled file there. I read somewhere that Guix
> already supplies precompiled files for all Common Lisp libraries, so
> ASDF should just be able to load this one instead of compiling it, but
> this doesn't seem to work in this case.
>
> I'm able to load other packages just fine, like sbcl-slynk and
> sbcl-alexandria. Using cl-clx-truetype instead of sbcl-clx-truetype also
> works fine, even though this one obviously also needs compilation.
>
> I'm not sure what the exact cause is, but it seems that there are at
> least two things wrong.
> 1. ASDF/SBCL doesn't find the precompiled file(s) for clx-truetype.
> 2. The path to where the compiled files are saved is wrong.
>
>
> Steps to reproduce:
> 1. Install sbcl and sbcl-clx-truetype
> 2. Run `sbcl --eval '(require :asdf)' --eval '(asdf:load-system
> :clx-truetype)'`
> 2a. Or start sbcl and manually run the commands
>
I can't reproduce this, at least on Guix at commit
da3e6aea0a750246e8a9120d62441c3df65faff0
I ran your command in one line with guix shell (and set --pure just in
case; I have SBCL_HOME set, not sure if anything else relevant):
--8<---------------cut here---------------start------------->8---
❯ guix shell --pure sbcl sbcl-clx-truetype -- sbcl --eval '(require :asdf)'
--eval '(asdf:load-system :clx-truetype)'
This is SBCL 2.4.0, 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.
WARNING: System definition file
#P"/gnu/store/qwb8qyjn615icrgxkjwqjwlwkwzxcc7y-sbcl-clx-truetype-0.0.1-1.c6e10a9/share/common-lisp/sbcl/clx-truetype/clx-truetype.asd"
contains definition for system "clx-truetype-test". Please only define
"clx-truetype" and secondary systems with a name starting with "clx-truetype/"
(e.g. "clx-truetype/test") in that file.
WARNING: System definition file
#P"/gnu/store/bqfsbh15lpnf9i9f5qf6ya6yhcdk8nw3-sbcl-cl-store-0.8.11-1.c787337/share/common-lisp/sbcl/cl-store/cl-store.asd"
contains definition for system "cl-store-tests". Please only define "cl-store"
and secondary systems with a name starting with "cl-store/" (e.g.
"cl-store/test") in that file.
WARNING: redefining ZPB-TTF::LOCATION in DEFGENERIC
* (quit)
--8<---------------cut here---------------end--------------->8---
Perhaps try with 'guix shell --pure' as well, in case it is an
environment setting?
John
> This is SBCL 2.4.0, 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.
> WARNING: System definition file
> #P"/gnu/store/qwb8qyjn615icrgxkjwqjwlwkwzxcc7y-sbcl-clx-truetype-0.0.1-1.c6e10a9/share/common-lisp/sbcl/clx-truetype/clx-truetype.asd"
> contains definition for system "clx-truetype-test". Please only define
> "clx-truetype" and secondary systems with a name starting with
> "clx-truetype/" (e.g. "clx-truetype/test") in that file.
> WARNING: System definition file
> #P"/gnu/store/bqfsbh15lpnf9i9f5qf6ya6yhcdk8nw3-sbcl-cl-store-0.8.11-1.c787337/share/common-lisp/sbcl/cl-store/cl-store.asd"
> contains definition for system "cl-store-tests". Please only define
> "cl-store" and secondary systems with a name starting with "cl-store/" (e.g.
> "cl-store/test") in that file.
> WARNING: redefining ZPB-TTF::LOCATION in DEFGENERIC
>
> debugger invoked on a SB-INT:SIMPLE-FILE-ERROR in thread
> #<THREAD tid=8027 "main thread" RUNNING {1001460003}>:
> Error opening
> #P"/gnu/store/qwb8qyjn615icrgxkjwqjwlwkwzxcc7y-sbcl-clx-truetype-0.0.1-1.c6e10a9/lib/common-lisp/sbcl/clx-truetype/package-tmpGHU3ALSV.fasl":
>
> Read-only file system
>
> Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.
>
> restarts (invokable by number or by possibly-abbreviated name):
> 0: [CONTINUE ] Retry opening.
> 1: [USE-VALUE ] Try opening a different file.
> 2: [RETRY ] Retry
> compiling #<CL-SOURCE-FILE
> "clx-truetype" "package">.
> 3: [ACCEPT ] Continue, treating
> compiling #<CL-SOURCE-FILE
> "clx-truetype" "package">
> as having been successful.
> 4: Retry ASDF operation.
> 5: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting the
> configuration.
> 6: Retry ASDF operation.
> 7: Retry ASDF operation after resetting the
> configuration.
> 8: Ignore runtime option --eval
> "(asdf:load-system :clx-truetype)".
> 9: [ABORT ] Skip rest of --eval and --load options.
> 10: Skip to toplevel READ/EVAL/PRINT loop.
> 11: [EXIT ] Exit SBCL (calling #'EXIT, killing the
> process).
>
> (SB-IMPL::%OPEN-ERROR
> #P"/gnu/store/qwb8qyjn615icrgxkjwqjwlwkwzxcc7y-sbcl-clx-truetype-0.0.1-1.c6e10a9/lib/common-lisp/sbcl/clx-truetype/package-tmpGHU3ALSV.fasl"
> 30 NIL :CREATE)
> 0]
> ;
> ; compilation unit aborted
> ; caught 1 fatal ERROR condition
> * %