# [Openmcl-devel] save-application

Gary Byers gb at clozure.com
Wed Jul 28 05:55:12 UTC 2010

On Tue, 27 Jul 2010, Mark H. David wrote:

> Anyone know why this doesn't work?

You can use the :PREPEND-KERNEL option to SAVE-APPLICATION
to create a self-contained executable file; without that
option, it just writes a heap image that can be mapped into
memory by the lisp kernel.

Giving a file a ".exe" extension doesn't turn it into a valid
Windows executable file (with the right signatures and structure.)

>
> C:\Program Files\ccl>wx86cl.exe
> Welcome to Clozure Common Lisp Version 1.4-r13122  (WindowsX8632)!
> ? (ccl::save-application "\\foo.exe")
>
> C:\Program Files\ccl>\foo
> Access is denied.

Some variant of "File isn't in executable format" might be a clearer
error message, though it's hard to say "an OS should spend N cycles
checking to see if alleged executable files are in the right format
so that better error messages can be produced in this case" - the case
is probably not exactly common, and the N cycles might add up.

It's likely unrelated to what you describe above, but some versions of
Windows may dislike writing files to / executing files in the root directory.
(I don't know what versions of Windows limit this or exactly what the
limits are, but I'm fairly sure that some limits exist.)

>
> C:\Program Files\ccl>
> _______________________________________________
> Openmcl-devel mailing list
> Openmcl-devel at clozure.com
> http://clozure.com/mailman/listinfo/openmcl-devel
>
>