Common lisp 无法在CL21旁边安装lparallel(?)CL21.CORE.FUNCTION失败
我有一个奇怪的错误组合 我在使用CL21,我在我的包中,我想安装lparallel。不可能:Common lisp 无法在CL21旁边安装lparallel(?)CL21.CORE.FUNCTION失败,common-lisp,quicklisp,asdf,Common Lisp,Quicklisp,Asdf,我有一个奇怪的错误组合 我在使用CL21,我在我的包中,我想安装lparallel。不可能: (ql:quickload :lparallel) To load "lparallel": Load 1 ASDF system: lparallel ; Loading "lparallel" ; ; caught ERROR: ; DYNAMIC-EXTENT on a weird thing: (CL21.CORE.FUNCTION:FUNCTION #:BODY-FN1) ;
(ql:quickload :lparallel)
To load "lparallel":
Load 1 ASDF system:
lparallel
; Loading "lparallel"
;
; caught ERROR:
; DYNAMIC-EXTENT on a weird thing: (CL21.CORE.FUNCTION:FUNCTION #:BODY-FN1)
;
; compilation unit aborted
; caught 2 fatal ERROR conditions
; caught 1 ERROR condition
; Evaluation aborted on #<UIOP/LISP-BUILD:COMPILE-FILE-ERROR {1008956C13}>.
所以我ql:quickloadcl21,然后在尝试加载lparallel时。我得到了第一个错误
但是,我在Portacle中尝试了一个新的图像,但…我无法复制这个
有什么想法吗?是不是
cl21
、lparallel
、quicklisp
或asdf
的问题?cl21
似乎将标准读卡器宏替换为与lparallel
不兼容的自己的版本。当您尝试在新映像中加载lparallel
时,ASDF将从.fasl
-加载了cl21
的文件中加载,因此您必须删除这些文件或使用强制重新编译
(asdf:operate 'asdf:load-op :lparallel :force t)
在使用标准语言编译lparallel
后加载cl21
不应导致相同的问题。看来,cl21通过使用与lparallel不兼容的自己的版本替换#
而弄乱了标准可读表。在一个新的映像中尝试(ql:quickload:lparallel:force t)
,以清除使用cl21加载编译的文件。此命令不成功。事实上,cl21取代了。
。我还填写了一个问题:工作建议是使用(asdf:operate'asdf:load op:lparallel:force t)
(或者删除.fasd文件)。你很接近!哦,对,ql:quickload
显然没有像我想的那样将:force t
传递给asdf。如果您想在回答中解释pb和解决方案,我一定会接受它:)非常清楚谢谢!(除了“尝试加载时”=>“尝试加载时”?)
(asdf:operate 'asdf:load-op :lparallel :force t)