view etc/README.Cygwin @ 18963:a30e1d20fd3c

Freset: properly reset graphics objects (bug #35511) * graphics.in.h (base_graphics_object, graphics_object, root): add new method "get_factory_defaults_list" to retrieve factory defaults as property_list * graphics.in.h (base_graphics_object::reset_default_properties (void)): move definition to graphics.cc * graphics.cc (xreset_default_properties): new function to set a list of prop/val * graphics.cc (base_graphics_object::reset_default_properties): use xreset_default_properties, override with parents' defaults * graphics.cc (root_figure::reset_default_properties, figure::reset_default_properties, uitoolbar::reset_default_properties): same as above but first empty local defaults * graphics.cc (axes_figure::reset_default_properties): same as above but use "propeties.set_defaults" to reset properties to their factory value. * graphics.cc (axes_figure::properties::set_defaults): new "reset" mode, that does the same as "replace" but x/y/zlabels and title are reset instead of being deleting/recreating. * graphics.cc: add %!tests for Freset
author pantxo <pantxo.diribarne@gmail.com>
date Fri, 21 Mar 2014 11:05:28 +0100
parents 2f05228cb959
children
line wrap: on
line source

Starting with version 3.0.1, Octave is once again part of the normal
net distribution of Cygwin, available from http://www.cygwin.com.  

It is possible to build Octave from source on Windows systems with Cygwin,
but with the old gcc-3.4.4-3 compiler there are some performance
problems related to the way C++ exception handling is implemented.
This is a known problem with a long history and it is STRONGLY 
encouraged to use gcc-4.3.2-1 or later.

Current binary versions are built with gcc-4.5.3-3.  


------- SUGGESTED CONFIGURATION  ---------------------------

The latest development Octave development sources (octave-3.5.91+)
are built with:

configure --enable-shared \
          --enable-float-truncate \
          CC=gcc-4 F77=gfortran-4 CXX=g++-4 CPP=cpp-4 
          lt_cv_deplibs_check_method=pass_all \
          LDFLAGS=-Wl,-no-undefined 

"--enable-float-truncate" is needed for the following bug:
http://thread.gmane.org/gmane.comp.gnu.octave.bugs/12361/focus=12404
Without it, one of the quadgk test will fail as
"a=a" could be false due to truncation problems with 
complex numbers. 

"lt_cv_deplibs_check_method=pass_all"  is needed to bypass
incorrect libtool detection of system capabilities and
to allow shared libs building.

"LDFLAGS=-Wl,-no-undefined" is better than previous 
"LDFLAGS=-no-undefined" as gcc-4 is now complaining about
unknown command and the "undefined" is for the linker.

The additional patch used for 3.4.3-3 package can also be 
needed for 3.6.x (see below).

------- SUGGESTION FOR FORK ISSUE --------------------------

The build process can fails in building images for documentation 
due to fork issue of the octave dll just built. In such case 
I suggest to rebase the built dll's with:

$ find build_tree -name "*.dll"  > rebase_list

and after closing all cygwin process, from a dash shell

$ rebaseall -s 'dll|so|oct' -T /full_path/rebase_list

After rebasing the "make" should be able to complete the
creation of the images and the documentation. 

------------------------------------------------------ 

Octave-3.4.3-3 package was built using:

configure --libexecdir=/usr/lib \
          --enable-shared \
          --enable-float-truncate \
          F77=gfortran-4 \
          lt_cv_deplibs_check_method=pass_all \
          LDFLAGS=-no-undefined    

plus and additional patch to solve a specific cygwin 
fltk print issue, see:
https://savannah.gnu.org/bugs/?31641

Octave-3.2.4 was built using:

configure --enable-shared \
          --without-fltk \
          --without-framework-opengl \
          CC=gcc-4 F77=gfortran-4 CXX=g++-4 CPP=cpp-4
          CFLAGS="-Dtimezone=_timezone"

------------------------------------------------------
Current Cygwin package maintainer for Octave:

  Marco Atzeri
  http://matzeri.altervista.org

Marco Atzeri
marco.atzeri@gmail.com
Italy

Last updated: Tue Jan  3 14:40:58 WEST 2012