[Openmcl-devel] Setting a toplevel function for build-application
Ron Garret
ron at flownet.com
Sat Sep 14 12:54:13 PDT 2013
I can't figure out how to set a toplevel function for build-application. The docs say:
"The best source of information about writing your own toplevel is the Clozure CL source code, especially the implementations of TOPLEVEL-FUNCTION in "ccl/level-1/l1-application.lisp"
In that file there is no example of calling build-application, but there is a (generic) function called toplevel-function.
If I do this:
(build-application :name "testapp" :directory #P"~/Desktop/" :copy-ide-resources t)
the resulting application (mostly) works fine [1], but if I do this:
(build-application :name "testapp" :directory #P"~/Desktop/" :copy-ide-resources t
:toplevel-function 'toplevel-function)
The resulting application crashes with hundreds of console message like this:
9/14/13 12:45:08 PM [0x0-0x3ae9ae6].com.clozure.store.ccl-x8664[90745] > While executing: #<CCL::STANDARD-KERNEL-METHOD NO-APPLICABLE-METHOD (T)>, in process toplevel(8).
9/14/13 12:45:08 PM [0x0-0x3ae9ae6].com.clozure.store.ccl-x8664[90745] > Error: There is no applicable method for the generic function:
9/14/13 12:45:08 PM [0x0-0x3ae9ae6].com.clozure.store.ccl-x8664[90745] > #<STANDARD-GENERIC-FUNCTION CCL::UI-OBJECT-DO-OPERATION #x3020000BC73F>
9/14/13 12:45:08 PM [0x0-0x3ae9ae6].com.clozure.store.ccl-x8664[90745] > when called with arguments:
9/14/13 12:45:08 PM [0x0-0x3ae9ae6].com.clozure.store.ccl-x8664[90745] > (#<A Dead Mac Pointer> :BREAK-OPTIONS-STRING T)
Clues appreciated.
What I'm actually trying to do is build a standalone application that just opens a webkit window and does nothing else (i.e. no listener). But I want to do it programmatically, without a nib file.
rg
[1] Actually, the resulting application complains about not being able to find the header directory, but that's easy to fix.
More information about the Openmcl-devel
mailing list