*** PLEASE NOTE: This information is mostly out of date.  It would be
*** useful for someone who uses Octave on Windows to take over
*** mainenance of this and other files related to running Octave on
*** Windows systems.


Instructions for installing Octave on Windows NT/95 systems using the
beta 18 release of the gnu-win32 tools from Cygnus Support.

1. Install the Cygnus gnu-win32 tools.  You only need the user tools,
   but you can install the full development kit instead (either will
   work -- the development kit contains all the user tools plus the
   GNU compilers and other development tools that are not needed to
   just run Octave).  The gnu-win32 tools are available from
   ftp://ftp.cygnus.com/pub/gnu-win32/latest, and also from
   ftp://ftp.che.wisc.edu/pub/octave/BINARIES/gnu-win32.

     -- Download usertools.exe or cdk.exe.

     -- Install the tools by running the file usertools.exe (or
        cdk.exe) and following the directions.  The default install
        location is /gnuwin32/b18 (the rest of the examples in this
        document assume that you've used the default location).

     -- Create a /bin directory and put a copy of sh.exe there.  You
        can find the sh.exe file in /gnuwin32/b18/H-i386-cygwin32/bin.

     -- Create a /tmp directory.

     -- Add

          C:\gnuwin32\b18\H-i386-cygwin32\bin 

        to your $PATH.

     -- Create a /etc directory and put a copy of the termcap file
        there.  You can find a suitable termcap file in the directory
        /gnuwin32/b18/H-i386-cygwin32/etc.

     -- There is a bug in the main gnu-win32 dll that will cause
        Octave to fail.  You need to fix it by either editing the file
        (using an editor like Emacs that can handle binary files) or
        by replacing it with the file cygwin-setpwent-fixed.dll from
        ftp://ftp.che.wisc.edu/pub/octave/BINARIES/gnu-win32.

        To fix the problem by editing the file, open the file
        /gnuwin32/b18/H-i386-cygwin32/bin/cygwin.dll and replace the
        string setpwend with setpwent.  This change needs to be made
        in three places in the same file.  Next, copy the fixed file to
        /gnuwin32/b18/H-i386-cygwin32/i386-cygwin32/lib/cygwin.dll.

        To fix the problem by replacing the file with a version that's
        already been fixed, download the file cygwin-setpwent-fixed.dll
        from ftp://ftp.che.wisc.edu/pub/octave/BINARIES/gnu-win32 and
        copy it to /gnuwin32/b18/H-i386-cygwin32/bin/cygwin.dll and
        /gnuwin32/b18/H-i386-cygwin32/i386-cygwin32/lib/cygwin.dll.

2. Install less for gnuwin32.  A copy is available from
   ftp://ftp.che.wisc.edu/pub/octave/BINARIES/gnu-win32

     -- Download the file less-gnu-win32.tar.gz.

     -- Install it along with the gnu-win32 tools.  Change your
        directory to /gnuwin32/b18/H-i386-cygwin32/bin and untar the
        less-gnu-win32.tar.gz file (bash syntax):

          tar zxf /path/to/less-gnu-win32.tar.gz

     -- Set the environment variable TERM to linux.

3. Install Octave.

     -- Download the file octave-2.0.10-i386-pc-cygwin32.tar.gz from 
        ftp://ftp.che.wisc.edu/pub/octave/BINARIES/gnu-win32.

     -- Untar the distribution:

          tar zxf octave-2.0.10-i386-pc-cygwin32.tar.gz

        The files will be unpacked into a subdirectory called
        octave-2.0.10-i386-pc-cygwin32.

     -- Change your directory to octave-2.0.10-i386-pc-cygwin32 and
        install the files using the command ./install-octave (running
        bash).

     -- The default installation directory is /octave.  If you choose
        a different installation directory, you will have to set the
        environment variable OCTAVE_HOME to the name of that directory
        (using Unix file name syntax) in order for Octave to work.

     -- Add C:\octave\bin to your path.

     -- Set the environment variable TERM to linux.

     -- Optionally set the environment variables HOME (for your home
        direoctory using Unix file name syntax) and USER (for your user
        name).

Note that Octave requires gnuplot for plotting, but the normal Windows
version of gnuplot will not work because it only reads from the GUI
and refuses to read input from stdin.  Mumit Khan has written a patch
that fixes the problem, but the gnuplot license does not allow us to
distribute modified versions of gnuplot in binary form.  The patch is
available from http://www.xraylith.wisc.edu/~khan/software/gnu-win32.

Eventually, I hope to automate most of this process and make it much
simpler.  Please contact me if you are interested in helping out with
this task.

Thanks,

John W. Eaton
jwe@bevo.che.wisc.edu
University of Wisconsin-Madison
Department of Chemical Engineering

Fri Feb 13 19:24:01 1998
