[Openmcl-devel] OpenMCL.app on panther

Gary Byers gb at clozure.com
Thu Dec 4 09:37:54 PST 2003

On Thu, 4 Dec 2003, Jason Jobe wrote:

> I'm new to openmcl and am very excited about the possibilities of
> creating cocoa applications with it.
> I think I finally have things in the right directories but I can't get
> OpenMCL.app up and running.
> I have tried loading various objc/cocoa libs from the command line with
> the following results.
> I'm wondering if this has anything to do with me running the latest
> panther release (10.3.1). I've started looking into the how to recreate
> the interface files but have not yet figured out how.

As someone else pointed out, the "jaguar-interfaces" should work fine
with 10.3 (at least until you try to use some new 10.3 feature).

> Any suggestions would be most appreciated.
> Thanks.
> Jason
> ---------------------- the tryouts -------------------------------
> This one runs from
> openmcl -l examples/apple-objc.lisp
> ;Compiler warnings :
> ;   Undefined function NS-EXCEPTION->LISP-CONDITION, in
> Welcome to OpenMCL Version (Alpha: Darwin) 0.14-031108!
> ?
> These abort:
> openmcl -l examples/cocoa-application.lisp
> RegisterProcess failed (error = -50)
> Abort
> openmcl -l examples/cocoa.lisp
> RegisterProcess failed (error = -50)

Someone else ran into this symptom a few weeks ago.  In their case,
the problem was that the bundle directory "ccl:OpenMCL.app;" - which
is part of the source distribution - wasn't installed.

The Cocoa demo works by trying to convince the OSX window system that
the lisp was launched from inside that directory.  If the directory's there
and intact, that little piece of fiction seems to work fine (on 10.2.x
and 10.3.x); if it's missing or fails some cursory consistency checks,
the library function that's trying to establish a window system connection
(#_CreateProcess, IIRC) aborts.

I certainly hope that that's the problem in your case (since it's pretty
easily rectified by installing the bundle directory.)  The demo code should
probably PROBE-FILE for this directory before calling #_CreateProcess (and
signal a lisp error if the directory's missing or corrupt.)

More information about the Openmcl-devel mailing list