A supressão de asdf:carga-sistema de saída do console
-
21-12-2019 - |
Pergunta
Eu criei um pequeno projeto com o uso de Aço Banco Common Lisp e eu estou usando ASDF para compilar e carregar-lo.O comando load é:
(asdf:load-system :<my-system>)
Tudo funciona bem (o programa é compilado e executado corretamente), mas continuo recebendo saída como
; 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> ...)
cada vez que o programa for recompilado.
Suponho que este resultado vem de asdf
porque eu sou, invocando a aplicação com
sbcl --noinform --noprint --script runner_sbcl.lisp
onde runner_sbcl.lisp
carrega o aplicativo real através de asdf:load-system
.Então eu suponho que
esta saída não vem de sbcl
.
Existe alguma maneira para desativar a saída do console no asdf:load-system
?Eu gostaria de ser notificado sobre erros de compilação / avisos.Eu não poderia encontrar qualquer informação na documentação.
Solução
o que sobre
(setf *load-verbose* nil)
(setf *load-print* nil)
(setf *compile-verbose* nil)
(setf *compile-print* nil)
?
Por que eles são definidos, de qualquer maneira?
Outras dicas
Esta é a minha solução para um problema semelhante que eu tinha com quicklisp do ql:quickload.
(with-output-to-string (*standard-output*)
;; asdf:load-system or ql:quickload..
(asdf:load-system :<your-system>))