-
Notifications
You must be signed in to change notification settings - Fork 315
/
INSTALL.in
251 lines (162 loc) · 8.11 KB
/
INSTALL.in
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
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
R @RVER@ for Windows
====================
This distribution contains the sources to build a port of R-@RVER@ to
run on Windows 95, 98, ME, NT4 and 2000 on Intel/clone chips. See the
file `readme' for fuller details, including how to install the binary
versions.
Building From Source on Windows
===============================
[Some further details, including how to debug, are given in the rw-FAQ.]
First collect the tools that you need. There is a `portal' with
current links at http://www.stats.ox.ac.uk/pub/Rtools/.
Collect the tools
-----------------
You will need suitable versions of at least make, sh, cat, cp, cut,
diff, echo, egrep, expr, g(awk), grep, ls, mkdir, mv, rm, sed, touch;
we use those from the cygwin distribution
(http://www.cygwin.com/mirrors.html) or (gzip, makeinfo, texindex)
compiled from the sources. We have packaged a set at
http://www.stats.ox.ac.uk/pub/Rtools/tools.zip.
BEWARE: `Native' ports of make are _not_ suitable (including that at
the mingw site). There were also problems with several earlier
versions of the cygwin tools and dll. To avoid frustration, please
use our tool set.
We recommend that you use a recent snapshot of the mingw port of gcc
from http://prdownloads.sourceforge.net/mingw/. For example, at the
time of writing, Mingw-1.0.1-20010726.tar.gz based on gcc-2.95.3.
Just unpack this somewhere and put its bin directory in your path.
You can also use the mingw port of gcc-2.95.2-1 by Mumit Khan linked
from http://www.mingw.org/, but you *cannot* use earlier versions of
the mingw compilers, for example gcc-2.95.2 (no -1): the symptom is a
report that `-shared' is not understood.
It *might* also be possible to use the compilers from the cygwin 1.1 net
release with the -mno-cygwin -mwin32 flags; the current versions use
mscrt.dll. (You will need the cygwin, gcc, mingw32, w32api and
binutils bundles. All the recent versions we have tried do not work
unchanged with -mno-cygwin.)
The Windows port of perl5, available via
http://www.activestate.com/Products/ActivePerl/.
zip and unzip from the Info-ZIP project (http://www.info-zip.org and
mirrors, and included in our tools.zip).
The zlib-1.1.3 sources from http://www.info-zip.org/pub/infozip/zlib/
and mirrors. Unpack this from this directory by
unzip zlib113.zip -d bitmap/zlib
If you want to make compiled html (.chm) files you will need the
Microsoft HTML Help Workshop, currently available for download at
http://msdn.microsoft.com/library/en-us/htmlhelp/html/hwMicrosoftHTMLHelpDownloads.asp
and http://www.microsoft.com/office/ork/xp/appndx/appa06.htm
You may need this on the same drive as the other tools. (Although we
have successfully used it elsewhere, others have reported problems).
If you want to make Window help files you will need hcrtf.exe from a
Windows compiler installation (this has been available for download at
ftp://ftp.microsoft.com/softlib/mslfiles/hcwsetup.exe).
All of these need to be installed and in your path, and the
appropriate environment variables set.
Building
--------
You also need the R source (R-@RVER@.tgz).
Then: untar R-@RVER@.tgz somewhere (with no spaces in the path names),
cd /somewhere/R-@RVER@/src/gnuwin32
IMPORTANT: edit MkRules to set the appropriate paths as needed.
Edit Makefile to set the type(s) of help that you want built.
and run
make BUILD=MINGW32 or CYGWIN
Note 1: the file @RWVER@\unzip\unzip32.dll is not in the source
distribution. It can be found in file unz542dN.zip at any Info-ZIP
mirror, or you can copy it from a binary distribution.
The file @RWVER@\bin\Rchtml.dll is only built if CHM help is specified
in the main Makefile. Its source is the help directory, and you need
the HTML Help Workshop files to build it. It contains instructions
to build it under VC++6, and it is preferable to use that as the
VC++ library will check versions of the components needed. You can just
copy this from a binary distribution.
Note 2: we have had reports that Norton Anti-Virus locks up the
machine when windres is run, so you may need to disable it.
Note 3: By default Doug Lea's malloc in the file src/gnuwin32/malloc.c is
used. You can opt out of this by commenting the line LEA_MALLOC=YES
in the Makefile, in which case the Windows malloc is used. The one
in crtdll.dll is unlikely to be satisfactory: the one in msvcrt.dll
does work but imposes a considerable performance penalty.
Note 4: You can make use of ATLAS (http://www.netlib.org/atlas/)
libraries by defining USE_ATLAS=YES in Makefile and specifying the
path to the libraries in macro ATLAS_PATH. You will need to build the
libraries optimized for your architecture under the Cygwin compilers.
(The pre-compiled libraries on that site are for Compaq Visual
Fortran, and you need to compile for g77.)
You can test a build by `make check': expect some differences in the
tests of the print routines. You may need to set TMPDIR to a suitable
temporary directory: the default is c:\TEMP.
Building bitmap device support
------------------------------
The file @RWVER@\bin\Rbitmap.dll is not built automatically:
instructions on how to build it are in the file bitmap\INSTALL. You
can just copy this from a binary distribution.
Building Tcl/Tk support
-----------------------
The TclTk support package is not built automatically. To use this you
need to download and install either ActiveTcl 8.3.3 from
http://aspn.activestate.com/ASPN/Downloads/ActiveTcl/ or tcl832.exe
from dev.scriptics.com, and set TCL_HOME in MkRules to where you
installed it (perhaps c:/Program Files/Tcl). Then
make tcl
will make the library.
Building the Manuals
====================
To make the PDF versions of the manuals you will need pdftex installed
and configured to work with a large file: see doc/manual/README. You
also need texindex (included in our tool set). Then the pdf manuals
can be made by
make docs
If you want to make the info versions (not the Reference Manual), you
will need a version of makeinfo 4.0 (included in our tool set). Then
cd ../../doc/manual
make -f Makefile.win info
will make the info files.
To make DVI versions of the manuals use
cd ../../doc/manual
make -f Makefile.win dvi
(assuming you have tex and latex installed and in your path).
To make HTML versions of the manuals (not the Reference Manual) use
cd ../../doc/manual
make -f Makefile.win html
This makes use of tidy.exe, from http://www.w3.org/.
The fptex distribution of TeX (via www.fptex.org) includes a suitable
port of pdftex.
Building the installers
=======================
See installer/INSTALL. You need a complete R build first, including
bitmap and Tcl/Tk support and the manuals.
Cross-building on ix86 Linux
============================
You will need i386-mingw32 cross-compilers installed and in your path,
preferably ones targetted at msvcrt.dll. There is currently a
complete set of tools at
http://www.stats.ox.ac.uk/pub/Rtools/i386-msvc-cross.tar.bz2
(Just unpack this somewhere and put its bin directory in your path.)
Instructions for building a cross-compiler are given at
http://www.nanotech.wisc.edu/~khan/software/gnu-win32/mingw-cross-howto.txt
At the time of writing these were rather outdated. There is another set
at
http://www.devolution.com/%7Eslouken/SDL/Xmingw32/
(There is also a cross-compiler there, but omitting g77 which you will
need.)
Apart from the compiler, you need the mingw32 runtime system and a
cross-built version of binutils 2.9.4.
You will need Perl, zip and unzip installed.
You also need: the R source (R-@RVER@.tgz), and to build the installer,
unzip542.zip from any Info-ZIP mirror.
Then: untar R-@RVER@.tgz somewhere, and
cd /somewhere/R-@RVER@/src/gnuwin32
Edit MkRules to set BUILD=CROSS and the appropriate paths (including
HEADER) as needed.
Edit Makefile to set the type(s) of help that you want built. (You
will not be able to cross-build .chm or .hlp files, nor Rchtml.dll,
so set WINHELP to NO.)
Packages can be made in the same way as natively: see the file
readme.packages. You will need to set STAMP=NO, e.g.
make STAMP=NO pkg-foo
Feedback
========
Please send comments and bug reports to (preferably both of)
Guido Masarotto <guido@hal.stat.unipd.it>
Brian Ripley <ripley@stats.ox.ac.uk>