On Thursday, April 11, 2002, at 05:32 PM, Bakul Shah wrote:
>> That had an effect: I no longer get the complaining about
>> '.../maxima_saved'. However, the rest is still an issue. The GUI is
>> essentially non-functional (as far as double-clicking is concerned),
>> and
>> I do still get the timeout dialog (waiting for maxima to start), after
>> which, the login environment bails. This could be an XonX problem, but
>> I don't get the reason for the timeout.
>
> login environment bailing is xmaxima's fault. See below.
>
> xmaxima is a wish script (a Tk/tcl program). Perhaps you can
> try debugging it? Which version of wish (& tk/tcl) works on
> os X? I have successfully used 8.2 & 8.3 on FreeBSD.
I have tcl 8.3 installed (via 'fink').
> Look in the `runOneMaxima' procedure in xmaxima. I suspect
> what is happening is this: it sets a variable `pid' to -1 and
> then tries starting up a maxima process. If it successfully
> starts maxima, $pid will be set to the pid of this new
> process. But somehow this doesn't happen. Ultimately it
> times out and (in closeMaxima) it does "kill -TERM $pid".
> Since $pid is still -1, it kills everything belonging to the
> user (you!).
It appears you've got it! I tried your suggestion (below) and things
worked as expected. I do get an alert about "can't execute", and
there's also this, in the terminal where I run xmaxima:
/sw/lib/clisp/base/lisp.run: operating system error during load of
initialisation file `/SandBox/sb/src/Maxima/maxima-
pre59/src/maxima-clisp.mem'
and there is, in fact, no such animal. Any thoughts on what next?
> Basically the catch procedure should not be killing anything
> until after it knows there is something to kill!
Is this as simple as not doing anything in CMkill() if $pid is -1?
Thanks for your help.
Regards,
Justin
--
Justin C. Walker, Curmudgeon-At-Large *
Institute for General Semantics | If you're not confused,
| You're not paying attention
*--------------------------------------*-------------------------------*