octave-maintainers
[Top][All Lists]
Advanced

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

Re: Octave GUI 0.5


From: David Bateman
Subject: Re: Octave GUI 0.5
Date: Fri, 17 Feb 2006 12:21:08 +0100
User-agent: Mozilla Thunderbird 0.8 (X11/20040923)

Sebastien Loisel wrote:

Dropping William as well, I suspect he didn't really want to know about this stuff.

    Why will static linking help you? Why only to liboctave? liboctave
    will
    only give you the libocatve_error_handler and
    liboctave_warning_handler.  For the Ferror function you'll also
    need to
link against liboctinterp.

Ok, I may need to link against all that statically, but you would know better.

    What about the octave_stdout [ie octave_pager_stream::stream()] .


That's been working for a couple of days, but I didn't update your tarball. I just made a new 0.5 tarball that includes the latest MinGW functionality. Maybe you should update so you see what's left to do: http://www.math.mcgill.ca/loisel/octave-gui/octave-gui-0.5.tar.gz

For this one, open a shell (I use my shell-x64.bat from the previous tarball, this one doesn't have it) and do ./configure && make (you don't need to aclocal && autoconf && automake, it's a make dist.)

    Doesn't it help here? As for cerr, unfortunately in error.cc the
    verror
    function is called with std::cerr as the output stream, so the Ferror
    function calls go straight to std::cerr. As for the


So either I'd have to link statically against that library, or have a get_cerr() to get that library's cerr, or the library could be modified to write to octave_stdout or something like that.

    liboctave_error_handler and liboctave_warning_handler functions
    defined
    in lo-error.c, these fprintf directly to stderr as well. So for the


I noticed those are function pointers. Would it be reasonable to just reimplement those in my Octave GUI and make the pointers point there? When are these pointers initialized? Are there any other cases where Octave writes straight to cerr, cout, stderr or stdout, instead of using octave_stdout?

As you say these are function pointers and so there is nothing to stop you implementing your own versions and calling the set_liboctave_error_handler or set_liboctave_warning_handler function to install it. In fact now I see that src/octave.cc itself does overloads the basic liboctave handlers with those in src/error.cc, so everything is sent to cerr. You therefore only need your get_cerr function.

Regards
David

--
David Bateman                                address@hidden
Motorola Labs - Paris +33 1 69 35 48 04 (Ph) Parc Les Algorithmes, Commune de St Aubin +33 6 72 01 06 33 (Mob) 91193 Gif-Sur-Yvette FRANCE +33 1 69 35 77 01 (Fax) The information contained in this communication has been classified as: [x] General Business Information [ ] Motorola Internal Use Only [ ] Motorola Confidential Proprietary



reply via email to

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