3

我在 OSX (macOS High Sierra) 上运行 LispWorks 7.1。我有时会遇到 Quicklisp 加载错误(我说有时是因为当我重新启动 LispWorks 时,有时我不会再次看到此错误)。

例子:

CL-USER 1 > (ql:quickload "iterate")
To load "iterate":
  Load 1 ASDF system:
    asdf
  Install 1 Quicklisp release:
    iterate

Error: Error detected during deflate decompression: Corrupted Data detected during decompression: Incorrect huffman code (1E55) in huffman decode!
  1 (abort) Give up on "iterate"
  2 Return to top loop level 0.

Type :b for backtrace or :c <option number> to proceed.
Type :bug-form "<subject>" for a bug report template or :? for other options.

知道发生了什么吗?

我已经确认我有一个最近的客户:

CL-USER 6 > (ql:update-client)
The most up-to-date client, version 2017-03-06, is already installed.
T

此外,回溯,以防万一:

CL-USER 12 : 1 > :b
Call to ERROR
Call to QL-GUNZIPPER::DECODE-HUFFMAN-BLOCK
Call to QL-GUNZIPPER::DECODE-BLOCK
Call to QL-GUNZIPPER::INFLATE-STREAM
Call to QL-GUNZIPPER::INFLATE-GZIP-STREAM
Call to QL-GUNZIPPER:GUNZIP
Call to (METHOD QL-DIST:INSTALL (QL-DIST:RELEASE))
Call to (METHOD QL-DIST:ENSURE-INSTALLED (T))
Call to MAP
Call to QUICKLISP-CLIENT::APPLY-LOAD-STRATEGY
Call to QUICKLISP-CLIENT::AUTOLOAD-SYSTEM-AND-DEPENDENCIES
Call to (METHOD QUICKLISP-CLIENT:QUICKLOAD (T))
Call to CLOS::NEXT-METHOD-CALL-2
Call to QL-DIST::CALL-WITH-CONSISTENT-DISTS
Call to CLOS::GENERIC-FUNCTION-NON-DISCRIMINATOR
Call to LET
Call to EVAL
Call to CAPI::CAPI-TOP-LEVEL-FUNCTION
Call to CAPI::INTERACTIVE-PANE-TOP-LOOP
Call to MP::PROCESS-SG-FUNCTION
4

1 回答 1

3

正如 Rainer Joswig 指出的那样,我只需要(呃!)应用最新的补丁。

为了将来参考,这涉及

  1. 下载此处列出的补丁
  2. 将它们复制到适当的private-patches目录(例如/Applications/LispWorks\ 7.1\ \(64-bit\)/Library/lib/7-1-0-0/private-patches对我来说)
  3. 相应地在目录中修改load.lisp(在这种情况下,添加(load-one-private-patch "lisp-memory-copy-32-chunks" :system64)and (load-one-private-patch "replace-i-vectors" :system)
  4. 重启 Lispworks
于 2018-03-15T08:26:18.827 回答