libmd provided by ql package is broken for x86_64 MacOS
I've attempted to follow the tutorial for data-frame and had issues when installing the library via quickl-lisp:
~ sbcl --load quicklisp.lisp This is SBCL 2.4.6, 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.
==== quicklisp quickstart 2015-01-28 loaded ====
To continue with installation, evaluate: (quicklisp-quickstart:install)
For installation options, evaluate: (quicklisp-quickstart:help)
- (ql:quickload :lisp-stat) To load "lisp-stat": Load 1 ASDF system: lisp-stat ; Loading "lisp-stat" ..............Library #P"/Users/xxxxx/.quicklisp/dists/quicklisp/software/cephes.cl-20231021-git/scipy-cephes/libmd-x86-64.dylib" exists, skipping build
debugger invoked on a CFFI:LOAD-FOREIGN-LIBRARY-ERROR in thread #<THREAD tid=259 "main thread" RUNNING {1000A98133}>: Unable to load any of the alternatives: ("libmd" #P"/Users/xxxx/.quicklisp/dists/quicklisp/software/cephes.cl-20231021-git/scipy-cephes/libmd-x86-64.dylib")
Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name): 0: [RETRY ] Try loading the foreign library again. 1: [USE-VALUE ] Use another library instead. 2: [TRY-RECOMPILING ] Recompile init and try loading it again 3: [RETRY ] Retry loading FASL for #<CL-SOURCE-FILE "cephes" "init">. 4: [ACCEPT ] Continue, treating loading FASL for #<CL-SOURCE-FILE "cephes" "init"> as having been successful. 5: Retry ASDF operation. 6: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting the configuration. 7: Retry ASDF operation. 8: Retry ASDF operation after resetting the configuration. 9: [ABORT ] Give up on "lisp-stat" 10: [REGISTER-LOCAL-PROJECTS ] Register local projects and try again. 11: Exit debugger, returning to top level.
(CFFI::FL-ERROR "Unable to load any of the alternatives:~% ~S" ("libmd" #P"/Users/xxxxxx/.quicklisp/dists/quicklisp/software/cephes.cl-20231021-git/scipy-cephes/libmd-x86-64.dylib")) source: (ERROR 'LOAD-FOREIGN-LIBRARY-ERROR :FORMAT-CONTROL CONTROL :FORMAT-ARGUMENTS ARGUMENTS) 0] 9 ; ; compilation unit aborted ; caught 1 fatal ERROR condition
I used a work around by installing libmd via Homebrew and symlinking that dylib to the one references in the error:
~ ln -s /usr/local/Cellar/libmd/1.1.0/lib/libmd.dylib /Users/xxxxxx/.quicklisp/dists/quicklisp/software/cephes.cl-20231021-git/scipy-cephes/libmd-x86-64.dylib
Quicklisp hasn't been updated in quite a long time. Thanks for mentioning the workaround. I'll leave this open until things are updated so that others with the same problem can find this solution.
Quicklisp now has the later libraries.