Function | Package: excl | ToC | DocOverview | CGDoc | RelNotes | FAQ | Index | PermutedIndex
| Allegro CL version 10.1 Unrevised from 10.0 to 10.1. 10.0 version

## dumplisp

Arguments: &key name ignore-command-line-arguments suppress-allegro-cl-banner virtual dxl-header

This function saves an image of the currently executing Common Lisp as an image file. This file (which usually has extension .dxl) is not executable, but is suitable as the image argument to the executable files such as mlisp or mlisp8 on Unix machines or mlisp.exe or mlisp8.exe on Windows (and alisp[.exe] or alisp8[.exe]). You can specify the name of the image file created with the name keyword argument. The name defaults to savedcl.dxl. Thus, calling in Lisp

    (dumplisp)

will produce an image file savedcl.dxl.

dumplisp will fail if there are too many oldspaces. The limit depends on a complex formula, but is around 2000. You can see how many oldspaces there are by calling `(room t)`. You can consolidate oldspaces with sys:resize-areas. The error message when there are too many is Error: Too many regions. Consolidate oldspace with sys:resize-areas and retry if you get this error.

This image can be started with the command line (use whichever of m/alisp or m/alisp8 was used to start the image that was dumped):

    UNIX 16-bit: mlisp -I <directory containing savedcl.dxl>/savedcl.dxl
    UNIX 8-bit: mlisp8 -I <directory containing savedcl.dxl>/savedcl.dxl

    WINDOWS 16-bit: mlisp.exe -I <directory containing savedcl.dxl>/savedcl.dxl
    WINDOWS 8bit: mlisp8.exe -I <directory containing savedcl.dxl>/savedcl.dxl

On Windows, .dxl is usually registered as an Allegro CL image file extension, so double-clicking on it in the File Explorer should also start Allegro CL with that image. Note too on Windows that if the image contains the IDE, then adding `-f cg:start-ide` to the command line will cause the IDE to be started automatically when the image starts.

The following table gives brief descriptions of the arguments. See the notes for more information on specific arguments and the warning that follow the notes. See dumplisp.htm for more information on dumplisp.

Argument | Value should be: | Effect | See
name | A string naming a file (default "savedcl.dxl"). Image files must have an extension. The usual extension is dxl but any non-null extension will do. | The dumped image will have this name. If no directory is specified, the file will be written to the current working directory. | Warning
ignore-command-line-arguments | `t` or `nil` (default `nil`) | If true, command-line-arguments prefaced with a `-` (a dash) are ignored during startup and all such arguments are considered application arguments (to command-line-arguments and friends). Arguments prefaced with a `+` (which are applicable to Windows only) are never ignored. See Command line arguments in startup.htm for details of command-line arguments. | Note 2
suppress-allegro-cl-banner | `t` or `nil` (default `nil`) | The Allegro CL copyright banner will not be printed on startup. | Note 3
virtual | `t` or `nil` (default `nil`) | See Virtual dumplisp: for very large images and pseudo-forks on Windows for details. This argument is for Windows only. It allows dumping most data to a virtual file for use by additional Lisp processes, thus approximating a fork. |
dxl-header | `nil` or a file designator (default `nil`) | If non-`nil`, the value should designate a file which is formatted properly to be a dxl file header. See the notes below for the requirements for such a file. The contents will be placed at the head of the resulting dxl file, and viewable with head or more or other appropriate operating system utilities. |

Notes:

1. These arguments from earlier (than 5.0) Unix releases are no longer supported: checkpoint (if `t`, tried to restart actual computational state, no longer possible); standalone (the separate executable/image model means an image cannot be standalone).
2. See The emacs-lisp interface and dumped images in dumplisp.htm for information on starting the emacs-lisp interface when ignore-command-line-arguments is true (the interface is usually started by a command-line argument).
3. When the suppress-allegro-cl-banner keyword argument is true, then the following warning is issued:
4. Requirements for a dxl header file: the file must be an even multiple of 8192 octets long, up to (* 9 8192) octets in all. Each octet should be a latin-1 character, and the first character in the file must be one of the characters in the range from #\1 to #\9. The function dribble-for-dxl-header will format a Lisp dribble in an appropriate manner to be a suitable dxl header file.

You are allowed to suppress (i.e., not display) the Franz Inc. supplied copyright banner in your application, if and only if you agree to display Franz Inc. copyright and proprietary notices wherever you display your own copyright or other proprietary notices.

Warning: This function depends on the current running Lisp image file to be present and readable (i.e. it cannot be read-protected) and not stripped. Therefore you cannot delete that file before running dumplisp and you cannot specify that file as the value of the name argument.

See also dumplisp.htm, building-images.htm, and delivery.htm.

Copyright (c) 1998-2022, Franz Inc. Lafayette, CA., USA. All rights reserved.
This page was not revised from the 10.0 page.
Created 2019.8.20.

|  | ToC | DocOverview | CGDoc | RelNotes | FAQ | Index | PermutedIndex
| Allegro CL version 10.1 Unrevised from 10.0 to 10.1. 10.0 version