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: Sun, 4 Nov 2012 20:58:30 -0500

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.


reply via email to

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