octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Qt/gui on MacOSX (was: 4.0 release goals)


From: Michael Goffioul
Subject: Re: Qt/gui on MacOSX (was: 4.0 release goals)
Date: Mon, 5 Nov 2012 08:06:47 -0500

On Mon, Nov 5, 2012 at 7:40 AM, Ben Abbott <address@hidden> wrote:
On Nov 4, 2012, at 8:58 PM, Michael Goffioul wrote:

> On Sun, Nov 4, 2012 at 6:40 PM, Ben Abbott <address@hidden> wrote:
> > Since the gui build process was integrated into the CLI build process, the gui has not run under MacOS X.  I'm not certain, but I think gnuplot had a similar problem.
> >
> >         http://www.digipedia.pl/usenet/thread/12789/10528/#post10548
> >
> > When I try to run the gui, I get the error below (repeated 16 times).  Which is the same error encountered by the gnuplot developers.
> >
> > The process has forked and you cannot use this CoreFoundation functionality safely. You MUST exec().
> > Break on __THE_PROCESS_HAS_FORKED_AND_YOU_CANNOT_USE_THIS_COREFOUNDATION_FUNCTIONALITY___YOU_MUST_EXEC__() to debug.
> >
> > Fixing this is beyond my abilities. but I can test patches.
> >
> >
> > I've had a quick look and my understanding is that somewhere we use a CoreFoundation API before forking, which is not allowed by Mac OS X (God knows why...), if you also want to use CF API after forking.
> >
> > AFAIK there aren't many places in octave where there's a direct access to the underlying graphics system, one of them is display_info class. Indeed, this class is used before forking, in octave_starting_gui (libinterp/octave.cc). So as  first try, you could edit src/main.cc and replace the call to octave_start_gui() with true to see whether it makes any difference.
> >
> > Michael.
>
> Definitely made a difference, but I can't tell if it is an improvement or not.
>
> The error no longer shows up, but neither Octave nor the gui starts either.  There is just a short delay and the shell prompt returns.
>
> Sigh.... Mac OS X is definitely "different". Try to run in gdb, maybe you'll get some useful backtrace or information.
>
> Michael.

Hmmm ... looks like something is broken.  The line below exists with no error or warning.

I suppose you mean "...exits with no error..." ?
 

        ./run-octave --force-gui --debug

You'll probably have to set breakpoints and run step-by-step to see where it exits.

Michael.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]