1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144
|
Octave has been ported to Windows NT and Windows 95 using the gnu-win32
tools from Cygnus Support. If you would like to volunteer to work on
improving this port, please contact bug-octave@bevo.che.wisc.edu.
The directory ftp://ftp.che.wisc.edu/pub/octave/BINARIES/gnu-win32
contains a binary distribution of Octave for Windows NT/95 along with
installation instructions. Unless you are interested in doing some
hacking, you should use the binary releases.
Here is a list of current problems (and workarounds, where available).
* To compile and install Octave on a Windows NT/95 system,
you will need to get the beta 19 release of the gnu-win32 tools.
They are available from ftp://ftp.cygnus.com/pub/gnu-win32.
* You will need to have f2c and libf2c.a or g77 installed. I would
recommend using g77. Mumit Khan has directions for building g77 at
http://www.xraylith.wisc.edu/~khan/software/gnu-win32/g77.html.
Another solution is to use egcs, which includes g77. The egcs
compiler is available from http://www.cygnus.com/egcs.
* You will also need a termcap library. The GNU termcap library seems
to work. You can get it from any GNU archive site, including
ftp://ftp.gnu.org/pub/gnu/termcap-1.3.tar.gz.
* It is possible to cross-compile Octave for Windows NT/95 systems.
On the same hardware, it's generally much faster to use gcc as a
cross compiler under Linux than as a native compiler under Windows.
Here are some instructions for building a cross version of gcc and
then using it to compile Octave. I've done this using a Linux
system as the host, but it should work equally well on other systems
that can run gcc).
+ install cdk on your Windows system
+ build a cross version of binutils:
tar zxf binutils-2.9.tar.gz
cd binutils-2.9
./configure --target=i386-pc-cygwin32 --prefix=/usr/local/cross-gcc
make
make install
(You can choose whatever value for prefix that you prefer, of
course, just remember to also make the corresponding changes in the
following steps as well.)
+ copy libraries and include files from cdk. You'll need the
library files from the following directory trees:
b19/H-i386-pc-cygwin32/lib
b19/H-i386-pc-cygwin32/i386-cygwin32/lib
Copy them to /usr/local/cross-gcc/i386-pc-cygwin32/lib.
You'll also need the include files from the following directory
trees:
b19/include
b19/H-i386-pc-cygwin32/include
Copy them to /usr/local/cross-gcc/i386-pc-cygwin32/include.
+ build cross version of egcs:
tar zxf egcs-1.0.2.tar.gz
cd egcs-1.0.2
export PATH=/usr/local/cross-gcc/bin:$PATH
./configure --target=i386-pc-cygwin32 --prefix=/usr/local/cross-gcc
make
make install
+ cross-compile libtermcap:
export PATH=/usr/local/cross-gcc/i386-pc-cygwin32/bin:$PATH
tar zxf termcap-1.3.tar.gz
cd termcap-1.3
./configure --host=i386-pc-cygwin3
make
cp termcap.h /usr/local/cross-gcc/i386-pc-cygwin32/include
cp libtermcap.a /usr/local/cross-gcc/i386-pc-cygwin32/lib
+ cross-compile Octave using the compiler you just built:
export PATH=/usr/local/cross-gcc/i386-pc-cygwin32/bin:$PATH
tar zxf octave-2.0.12.tar.gz
cd octave-2.0.10
./configure --host=i386-pc-cygwin3
make
+ make a binary distribution to copy to your Windows system:
make -f octMakefile binary-dist
+ copy the binary distribution to your Windows system and install
using the intall-octave shell script
* 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.
* If Octave takes a long time to find function files, you may have to
modify your LOADPATH to avoid device names specified using the
`//DEV/subdir' syntax. To map the D: drive (for example) to
/D_DRIVE, do the following:
cd /
mkdir /D_DRIVE
mount d: /D_DRIVE
Then you can set your LOADPATH to include /D_DRIVE/subdir instead of
//d/subdir.
* If you see error messages like the following:
The heap has been split, CYGWIN can't fork this process. Increase
the heap_chunk_size in the registry and try again.
you can increase the heap size by saving the follwoing text to a
file (delete the leading white space) and then double click on the
file. Try changing the value to something larger than 4 (MB).
REGEDIT4
[HKEY_CURRENT_USER\Software\Cygnus Solutions\CYGWIN.DLL setup\b15.0]
"heap_chunk_in_mb"=dword:00000004
If you know of solutions for any of the problems mentioned above,
please contact bug-octave@bevo.che.wisc.edu.
More information about the gnu-win32 project is available via the WWW
at http://www.cygnus.com/gnu-win32.
John W. Eaton
jwe@bevo.che.wisc.edu
University of Wisconsin-Madison
Department of Chemical Engineering
Thu Apr 16 23:39:13 1998
|