[gforth] / gforth / INSTALL.DOS  

gforth: gforth/INSTALL.DOS


1 : anton 1.8 Copyright (C) 2003 Free Software Foundation, Inc.
2 :     This file is free documentation; the Free Software Foundation gives
3 :     unlimited permission to copy, distribute and modify it.
4 :    
5 : pazsan 1.5 MS-DOS:
6 :    
7 : pazsan 1.2 You need DJ Delorie's port of GCC to DOS (DJGPP 2.0) to compile
8 :     Gforth. DJGPP provides a DPMI client that allows to use the 32-bit
9 :     features of the 80386, but on the other hand it requires at least a
10 :     386. A DPMI host is also part of the DJGPP 2.0 package, this is
11 :     required if you don't have a DPMI host yourself (Windows/OS/2/Linux
12 :     DOS-box, Quemm or others).
13 : pazsan 1.1
14 : pazsan 1.7 First run
15 :    
16 :     config
17 :    
18 :     config has the following useful parameters:
19 :     --enable-force-reg Use explicit register declarations if they appear in
20 :     the machine.h file. This can cause a good speedup,
21 :     but also incorrect code with some gcc versions on
22 :     some processors (default disabled).
23 :     --enable-direct-threaded Force direct threading. This may not work on
24 :     some machines and may cause slowdown on others.
25 :     (default disabled)
26 :     --enable-indirect-threaded Force indirect threading. This can cause a
27 :     slowdown on some machines.
28 :     (default enabled)
29 :    
30 : pazsan 1.5 OS/2:
31 :    
32 :     You need EMX 0.9c to compile Gforth. The EMX package provides all
33 :     necessary Unix-like tools, tty and signal handling.
34 :    
35 : pazsan 1.6 Windows 95/Windows NT:
36 :    
37 :     You need the Cygnus Win32 package. This package currently is only in
38 :     beta test, so expect bugs and quirks.
39 :    
40 :     If you don't want to install the DJGPP, CYGWIN32 or EMX package (quite
41 :     large), look for a binary distribution of Gforth for DOS, Win32 or
42 : pazsan 1.7 OS/2.
43 :    
44 :     You also must have a version of GNU make, because DOS/Win32/OS/2 make
45 :     programs are likely to have problems with the Makefile. If you want to
46 :     change Gforth, you may need GNU m4, too. Because DJGPP provides some
47 :     use of long filenames under Windows 95, you should unpack the gforth
48 :     package with a Windows-95-aware archiver (those from DJGPP or the
49 :     Cygnus Win32-package come in mind), because otherwise gforth will not
50 :     find the necessary files. With MS-DOS versions prior 7.0 or DR-DOS,
51 :     these names are cut due to the 8.3 rule. This might confuse DJGPP
52 :     2.0's make, you could use DJGPP 1.x's make instead. Gforth 0.4.0
53 : pazsan 1.6 hasn't been compiled with a MS-DOS prior 7.0.
54 : pazsan 1.5
55 :     Compiling under DOS or OS/2 has a number of quirks, and if it doesn't
56 :     compile out of the box, you should know what you do. I therefore
57 : pazsan 1.6 discourage unexperienced users to compile gforth themselves. There's a
58 : pazsan 1.5 binary package for it anyway.
59 : pazsan 1.1
60 : pazsan 1.6 Compiling using CygWin32 works a bit better, but there are still
61 :     quirks. The package allows to "mount" Windows directories under
62 :     typical unix locations. E.g. I installed the package in E:\cygnus, and
63 :     then I mount /usr, /usr/local and /bin with
64 :    
65 :     ./mount e:/cygnus /usr
66 :     ./mount e:/cygnus/H-i386-cygwin32 /usr/local
67 :     ./mount e:/cygnus/H-i386-cygwin32/bin /bin
68 :    
69 :     once. Each time I start CygWin32's bash, I set up the following variables:
70 :    
71 :     export TMPDIR=/usr/tmp
72 : pazsan 1.7 export COMPILER_PATH=/usr/local/lib/gcc-lib/i386-cygwin32/cygnus-2.7.2-970404
73 : pazsan 1.6 export LIBRARY_PATH="/usr/lib;/usr/local/lib"
74 :     export C_INCLUDE_PATH=/usr/local/i386-cygwin32/include
75 :     export GCC_DEFAULT_OPTIONS="-specs=$COMPILER_PATH/specs"
76 :     export PATH=/bin:.:$PATH
77 :    
78 : pazsan 1.7 Write this into a script and source it in at each bash invocation, or
79 :     put it into your .bashrc.
80 : pazsan 1.6
81 : pazsan 1.1 If you don't bother and want to make it yourself, type
82 :    
83 :     configure
84 :    
85 : pazsan 1.2 configure has the following useful parameters:
86 :     --enable-force-reg Use explicit register declarations if they appear in
87 :     the machine.h file. This can cause a good speedup,
88 :     but also incorrect code with some gcc versions on
89 :     some processors (default disabled).
90 :     --enable-direct-threaded Force direct threading. This may not work on
91 :     some machines and may cause slowdown on others.
92 : pazsan 1.4 (default disabled)
93 : pazsan 1.2 --enable-indirect-threaded Force indirect threading. This can cause a
94 :     slowdown on some machines.
95 : pazsan 1.4 (default enabled)
96 : pazsan 1.1
97 :     After covering all inconveniences, type
98 :    
99 :     make
100 :    
101 :     Now you can check whether your shiny new Forth system works. Say
102 :    
103 :     make test
104 :    
105 :     You can run some benchmarks with
106 :    
107 :     make bench
108 :    
109 : pazsan 1.7 and compare them with the results in Benchres and in the manual. DOS
110 :     and OS/2 don't allow to run the benchmarks, since the command TIME
111 :     means something different there.
112 :    
113 :     Don't try to do "make install" there, it won't work, either. It is not
114 :     possible to "make dist" or "make bindist", too, because of the
115 :     limitations of DOS command lines.
116 : pazsan 1.1
117 :     Add the following entry to your Autoexec.bat:
118 :    
119 : pazsan 1.3 SET GFORTHPATH=<your gforth source directory>;.
120 : pazsan 1.1
121 : pazsan 1.3 Use / instead of \ in your gforth source directory. Gforth now uses
122 : pazsan 1.6 ';' as path separator for DOS and OS/2 (not for Cygwin32), so you
123 :     won't have problems with DOS pathes that may contain ':', which is the
124 : pazsan 1.7 default path separator in Unix. Use ~+ for the current directory.
125 : pazsan 1.1
126 :     For paper documentation, print gforth.ps (a Postscript file (300dpi
127 :     fonts, i.e., it works, but does not produce best quality on better
128 :     printers)), or say
129 :    
130 :     make gforth.dvi
131 :    
132 :     and print the resulting file gforth.dvi (you need TeX for that! But
133 :     with TeX you can print it even if you don't have a Postscript printer
134 : pazsan 1.5 nor Ghostscript). You could be able to make a HTML version of the
135 : pazsan 1.1 document, but AFAIK there is no texi2html for DOS available, as there
136 : pazsan 1.7 is no perl available. You should get the HTML pages from the same
137 :     location where you got Gforth or from
138 :    
139 :     http://www.complang.tuwien.ac.at/forth/gforth/
140 :     or
141 :     ftp://ftp.complang.tuwien.ac.at/pub/forth/gforth/

CVS Admin

Powered by ViewCVS 1.0-dev
(Powered by ViewCVS)

ViewCVS and CVS Help