Suprimiendo asdf: salida de consola del sistema de carga
-
21-12-2019 - |
Pregunta
Creé un pequeño proyecto usando Steel Bank Common Lisp y estoy usando ASDF para compilarlo y cargarlo.El comando de carga es:
(asdf:load-system :<my-system>)
Todo funciona bien (el programa se compila y funciona bien) pero sigo obteniendo resultados 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 se vuelve a compilar el programa.
Supongo que esta salida proviene de asdf
porque estoy invocando la aplicación con
sbcl --noinform --noprint --script runner_sbcl.lisp
dónde runner_sbcl.lisp
carga la aplicación real a través de asdf:load-system
.Así que supongo que esta salida no proviene de sbcl
.
¿Hay alguna forma de desactivar la salida de la consola en asdf:load-system
?Me gustaría recibir notificaciones únicamente sobre errores/advertencias de compilación.No pude encontrar ninguna información en la documentación.
Solución
qué pasa
(setf *load-verbose* nil)
(setf *load-print* nil)
(setf *compile-verbose* nil)
(setf *compile-print* nil)
?
¿Por qué están listos, de todos modos?
Otros consejos
Esta es mi solución para un problema similar que tuve con ql:quickload de Quicklisp.
(with-output-to-string (*standard-output*)
;; asdf:load-system or ql:quickload..
(asdf:load-system :<your-system>))