【发布时间】:2019-12-27 03:22:27
【问题描述】:
我最近一直在制作我的第一个 quicklisp 项目,我想分享它。我已经将it 放在了 github 上,但并不是每个人都安装了 emacs + slime + quicklisp,所以我想制作一个可以与代码一起放入的可执行文件。
为此,我使用buildapp 并遵循this stackoverflow 答案中列出的步骤。
$ sbcl --no-userinit --no-sysinit --non-interactive \
--load ~/quicklisp/setup.lisp \
--eval '(ql:quickload "ltk-colorpicker")' \
--eval '(ql:write-asdf-manifest-file "quicklisp-manifest.txt")'
$ buildapp --output out \
--manifest-file quicklisp-manifest.txt \
--load-system ltk-colorpicker \
--entry colorpicker
运行这些命令后,我收到以下错误:
Fatal INPUT-ERROR-IN-LOAD:
READ error during LOAD:
The symbol "*SYSTEM-DEFINITION-SEARCH-FUNCTIONS*" is not external in the ASDF/FIND-SYSTEM package.
Line: 16, Column: 90, File-Position: 15267
Stream: #<SB-INT:FORM-TRACKING-STREAM for "file /home/nathan/quicklisp/local-projects/ltk-colorpicker/dumper-2SKVI5f7.lisp" {1001B70F83}>
这里的主要问题是我什至不知道如何开始修复它。我见过this gibhub 问题,但这与 Homebrew 的问题有关,它甚至从未提及buildapp。这一切都非常令人困惑。我希望我能得到一些帮助。
提前感谢您的任何回答。
【问题讨论】:
-
你提到的 github 问题 确实 提到了 buildapp,在我看来,问题在于 ASDF 和 buildapp 之间缺少向后兼容性。也许您需要更新版本的 buildapp(或从源代码构建)。
-
仅供参考,您没有有使用 buildapp 来构建可执行文件。我们可以使用
asdf:make,见lispcookbook.github.io/cl-cookbook/scripting.html#with-asdf和ps:我要求截图:)
标签: common-lisp quicklisp asdf