Major Section: OTHER
See saving-and-restoring for an explanation of why one might want to use this function.
Examples:
; Save an executable named my-saved_acl2:
(save-exec "my-saved_acl2"
"This saved image includes Version 7 of Project Foo.")
; Same as above, but with a generic comment instead:
(save-exec "my-saved_acl2" nil)
General Form:
(save-exec exec-filename extra-startup-string)
where exec-filename is the filename of the proposed executable and
extra-startup-string is a non-empty string to be printed after the normal
ACL2 startup message when you start up the saved image. However,
extra-startup-string is allowed to be nil, in which case a generic
string will be printed instead.Notes:
1. For technical reasons, you must first exit the ACL2 read-eval-print loop,
for example by executing :q, before evaluating a save-exec call.
2. The image will be saved so that in the new image, the raw Lisp package and
the package in the ACL2 read-eval-print loop (see lp) will be the same as
their respective values at the time save-exec is called.
3. For most Common Lisps, the specified file (e.g., "my-saved_acl2" in
the examples above) will be written as a small script, which in turn invokes
a saved image to which an extension has been appended (e.g.,
my-saved_acl2.gcl for the examples above, when the underlying Common Lisp
is GCL on a non-Windows system).