Re: sbcl/glibc troubles
Sorry, I misread the error message. Your error is unrelated I think, although you might need the aforementioned trick later. The problem is with libosicat. How did you install it? It seems to me that it came pre-compiled as a binary. You can check this with ldd /home/slade/.cache/common-lisp/sbcl-1.4.4-linux-x64/home/slade/quicklisp/dists/quicklisp/software/osicat-20180228-git/posix/libosicat.so (Find `ldd` in the gcc-toolchain package.) If I'm right, you need to package libosicat for Guix first so that the linker knows about the right Glibc, etc. which paths are different on Guix compared to most traditional distributions. Once you get libosicat compiled correctly (check the output of ldd to make sure there is no missing library) it should work fine. If not, try to customize cffi:*foreign-library-directories*. Let me know if you need help with osicat. -- Pierre Neidhardt https://ambrevar.xyz/ signature.asc Description: PGP signature
Re: sbcl/glibc troubles
On 2018-09-13T01:47:49-0600, Pierre Neidhardt wrote: > Basically all you need is to call > --8<---cut here---start->8--- > (ql:quickload :cffi) > (push (format nil "~a/.guix-profile/lib/" (uiop:getenv "HOME")) > cffi:*foreign-library-directories*) > --8<---cut here---end--->8--- > before calling quickload. > Note that the trailing "/" in the library path is important. I must not be doing something right, because it still complains about not being able to find GLIBC_2.28. I notice it also says: (CFFI::FL-ERROR "Unable to load foreign library (~A).~% ~A" :LIBOSICAT #<(SIMPLE-BASE-STRING 422) Error opening shared object "/home/slade/.cache/common-lisp/sbcl-1.4.4-linux-x64/home/slade/quicklisp/dists/quicklisp/software/osicat-20180228-git/posix/libosicat.so": —Ben -- Benjamin Slade - https://babbagefiles.xyz `(pgp_fp: ,(21BA 2AE1 28F6 DF36 110A 0E9C A320 BBE8 2B52 EE19)) '(sent by mu4e on Emacs running under GNU/Linux . https://gnu.org ) `(Choose Linux ,(Choose Freedom) . https://linux.com )
sbcl/glibc troubles
I'm trying (ultimately) to install "shuffletron" [ http://vintage-digital.com/hefner/software/shuffletron/ ], a common lisp music player, but I'm getting stuck on one of its dependencies, "osicat", with the following error from `(ql:quickload "osicat")` under sbcl: <--> ; Loading "osicat" .. debugger invoked on a CFFI:LOAD-FOREIGN-LIBRARY-ERROR in thread #: Unable to load foreign library (LIBOSICAT). Error opening shared object "/home/emacsomancer/.cache/common-lisp/sbcl-1.4.4-linux-x64/home/emacsomancer/quicklisp/dists/quicklisp/software/osicat-20180228-git/posix/libosicat.so": /gnu/store/l4lr0f5cjd0nbsaaf8b5dmcw1a1yypr3-glibc-2.27/lib/libc.so.6: version `GLIBC_2.28' not found (required by /home/emacsomancer/.cache/common-lisp/sbcl-1.4.4-linux-x64/home/emacsomancer/quicklisp/dists/quicklisp/software/osicat-20180228-git/posix/libosicat.so). <--> I have glibc-2.28 installed however. Is there a way to get it to associate with this instead of (for whatever reason) with glibc-2.27? —Ben -- Benjamin Slade - https://babbagefiles.xyz `(pgp_fp: ,(21BA 2AE1 28F6 DF36 110A 0E9C A320 BBE8 2B52 EE19)) '(sent by mu4e on Emacs running under GNU/Linux . https://gnu.org ) `(Choose Linux ,(Choose Freedom) . https://linux.com )