1

我使用 Steel Bank Common Lisp 创建了一个小项目,我正在使用 ASDF 编译和加载它。加载命令为:

(asdf:load-system :<my-system>)

一切正常(程序编译并运行良好)但我不断得到输出

; compiling file "[...].lisp" (written 13 APR 2014 06:20:03 PM):
; compiling (DEFPACKAGE :<my-package> ...)
; compiling (DEFUN <my-func-1> ...)
; compiling (DEFUN <my-func-2> ...)
; compiling (DEFUN <my-func-3> ...)

每次重新编译程序时。

我想这个输出来自asdf因为我正在调用应用程序

sbcl --noinform --noprint --script runner_sbcl.lisp

其中runner_sbcl.lisp通过asdf:load-system. 所以我想这个输出不是来自sbcl.

有什么方法可以禁用控制台输出asdf:load-system吗?我只想收到有关编译错误/警告的通知。我在文档中找不到任何信息。

4

2 回答 2

5

关于什么

(setf *load-verbose* nil)
(setf *load-print* nil)
(setf *compile-verbose* nil)
(setf *compile-print* nil)

?

无论如何,为什么要设置它们?

于 2014-04-16T17:55:33.527 回答
1

这是我在使用 quicklisp 的 ql:quickload 时遇到的类似问题的解决方法。

(with-output-to-string (*standard-output*)
  ;; asdf:load-system or ql:quickload..
  (asdf:load-system :<your-system>))
于 2014-04-16T04:17:04.637 回答