Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 269 lines (194 sloc) 10.39 kb
fa44a2c Initial revision
r authored
1
2 INSTALLING R UNDER UNIX
3
4
5 GENERALITIES
6
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
7 This document concerns building and installing R from sources. Pre-made
8 binaries are made available for some systems with varying regularity and
9 can be obtained from CRAN (see the RESOURCES file).
df9bbcc information on getting and unpacking files
pd authored
10
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
11 R will configure and build under a number of common Unix-like platforms
12 (including i386-freebsd, i386-linux, ppc-linux, mips-sgi-irix,
13 alpha-linux, alpha-dec-osf4, rs6000-ibm-aix, hppa-hp-hpux, sparc-linux,
9c284f6 Windows instructions are now in INSTALL
ripley authored
14 and sparc-sun-solaris) and on Windows 9x/NT (see `src/gnuwin32/INSTALL').
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
15 In general it is relatively easy to adapt R to new platforms. See the
16 section on new platforms for details.
8aa1433 GNOME dependencies etc
ripley authored
17
fa44a2c Initial revision
r authored
18
df9bbcc information on getting and unpacking files
pd authored
19 GETTING AND UNPACKING THE SOURCES
20
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
21 The simplest way is to download the most recent R-x.y.z.tgz package, and
22 unpack them with
df9bbcc information on getting and unpacking files
pd authored
23
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
24 tar xvfz R-x.y.z.tgz
df9bbcc information on getting and unpacking files
pd authored
25
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
26 on systems that have GNU tar installed. On other systems you need at
27 least to have the "gzip" program installed. Then you can do
df9bbcc information on getting and unpacking files
pd authored
28
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
29 gzip -dc R-x.y.z.tgz | tar xvf -
df9bbcc information on getting and unpacking files
pd authored
30
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
31 If you need to transport the sources on floppy disks, you can download
32 the R-x.y.z.tgz-split.* files and paste them together at the destination
df9bbcc information on getting and unpacking files
pd authored
33 with
34
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
35 cat R-x.y.z.tgz-split.* > R-x.y.z.tgz
df9bbcc information on getting and unpacking files
pd authored
36
37 and proceed as above.
38
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
39 Finally, for minor-minor releases (x.y.z with z != 0), a patch against
40 the preceding release is made available in R-x.y.{z-1}-x.y.z.diff.gz
41 (e.g., R-0.63.2-0.63.3.diff.gz), which is generally a much shorter file
42 that the .tgz files. Such a file can be applied to the sources of the
43 previous version by changing to the top directory of it and
df9bbcc information on getting and unpacking files
pd authored
44
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
45 gzip -dc /path/to/it/R-x.y.{z-1}-x.y.z.diff.gz | patch -E -p1
df9bbcc information on getting and unpacking files
pd authored
46
47 Notice that this does not necessarily work if the older sources have
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
48 been modified (e.g., by building in their directories).
fa44a2c Initial revision
r authored
49
8aa1433 GNOME dependencies etc
ripley authored
50
94e6a91 added make install
leisch authored
51 SIMPLE COMPILATION
fa44a2c Initial revision
r authored
52
da9f5c7 Explain that `make docs' requires Perl version 5 etc.
hornik authored
53 Choose a place to install the R tree (R is not just a binary, but has
54 additional data sets, help files, font metrics etc). Let's call this
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
55 place R_HOME. Untar the source code. This should create directories
56 src, doc, and several more. Issue the following commands:
fa44a2c Initial revision
r authored
57
58 ./configure
59 make
60
da9f5c7 Explain that `make docs' requires Perl version 5 etc.
hornik authored
61 If these commands execute successfully, the R binary will be copied to
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
62 the `${R_HOME}/bin' directory. In addition, a shell script front-end
da9f5c7 Explain that `make docs' requires Perl version 5 etc.
hornik authored
63 called "R" will be created and copied to the same directory. You can
64 copy this script to a place where users can invoke it, for example to
65 `/usr/local/bin/R'. You could also copy the man page `R.1' to a place
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
66 where your man reader finds it, such as `/usr/local/man/man1'. If you
67 want to install the complete R tree to, e.g., `/usr/local/share/R', see
94e6a91 added make install
leisch authored
68 section INSTALLATION below.
fa44a2c Initial revision
r authored
69
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
70 You do not necessarily have to build R in the top-level source directory
71 (say, TOP_SRCDIR). To build in BUILDDIR, cd there and run
ba6787e branch update
pd authored
72
73 TOP_SRCDIR/configure
74 make
75
97ad1f7 branch update
pd authored
76 and so on, as described further below. This has the advantage of always
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
77 keeping your source tree `clean'. (You may need GNU make to allow
78 this.)
ba6787e branch update
pd authored
79
f7f10e3 Explain configure command line options.
hornik authored
80 If you need or want to set certain configure variables to something
81 other than their default, you can do that by either editing the file
82 `config.site' or on the command line as
83
e05c9c8 perl
maechler authored
84 VAR="..." ./configure # Bourne shell compatibles
85 (setenv VAR "..."; ./configure) # C shell
f7f10e3 Explain configure command line options.
hornik authored
86
eff400b warning about papersize in INSTALL
thomas authored
87 One common variable to change is R_PAPERSIZE, which defaults to a4, not
88 letter.
89
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
90 If you have libraries and header files, e.g., for GNU readline, in
e6183ff Improve as suggested by BDR.
hornik authored
91 non-system directories, use the variables LIBS (for libraries) and
92 CPPFLAGS (for header files), respectively, to specify these locations.
93
fa5f983 mention removing config.cache
ripley authored
94 If you find you need to alter configure variables, it is worth noting
95 that some settings are cached in the file config.cache, and it is a
96 good idea to remove that file before re-configuring.
97
94e6a91 added make install
leisch authored
98 Make will also build plain text help pages as well as HTML and LaTeX
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
99 versions of the R object documentation (the three kinds can also be
100 generated separately using make help, make html and make latex). Note
101 that you need Perl version 5, available via http://www.perl.com/CPAN/,
102 to build this documentation. If this is not available on your system,
103 you can obtain PDF versions of the documentation files via the
104 Comprehensive R Archive Network (CRAN), see the file `RESOURCES' for
105 information on CRAN.
106
107 Use `make dvi' to create dvi versions of the R manuals, such as
108 `refman.dvi' (an R object reference index) and `R-exts.dvi', the "R
109 Extension Writers Guide", in the `doc/manual' subdirectory. These files
110 can be previewed and printed using standard programs such as `xdvi' and
111 `dvips'. You can also use `make pdf' to build PDF (Portable Document
112 Format) version of the manuals, and view these using Acrobat. Manuals
113 written in the GNU Texinfo system can also be converted to info files
114 suitable for reading online with Emacs or standalone GNU Info; use `make
115 info' to create these versions (note that this requires `makeinfo'
116 version 4).
117
118 Now rehash if necessary, type `R', and read the R manuals and the R FAQ
119 (http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html).
120
121 The GNOME interface for R will only be built if you specify it: see the
122 GNOME section below.
6e97328 Added information on compiling the GNOME interface
lyndon authored
123
fa44a2c Initial revision
r authored
124
94e6a91 added make install
leisch authored
125 INSTALLATION
126
127 After
785c495 Updated.
hornik authored
128
94e6a91 added make install
leisch authored
129 ./configure
130 make
785c495 Updated.
hornik authored
131
94e6a91 added make install
leisch authored
132 have been completed successfully, you can install the complete R tree
133 to your system by typing
134
135 make install
136
137 This will install to the following directories:
138
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
139 ${prefix}/bin the front-end shell script
140 ${prefix}/man/man1 the man page
141 ${prefix}/share/R all the rest (libraries, on-line help
94e6a91 added make install
leisch authored
142 system, ...)
143
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
144 where prefix is determined during configuration (typically `/usr/local')
94e6a91 added make install
leisch authored
145 and can be set by running configure with the option
146
147 ./configure --prefix=/where/you/want/R/to/go
148
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
149 This installs the R executable to `/where/you/want/R/to/go/bin', and so
150 on. The prefix of the installation directories can also be seen in the
151 status message that is displayed at the end of configure.
152
153 To install dvi, info and PDF versions of the manuals, use `make
154 install-dvi', `make install-info' and `make install-pdf', respectively.
fa44a2c Initial revision
r authored
155
156
aa7eb80 branch update
pd authored
157 USING MAKE
158
31eef2a clarify make requirements
ripley authored
159 To compile R, you will most likely find it easiest to use GNU make.
160 On Solaris 2.6/7 in particular, you need a version of GNU make
161 different from 3.77; 3.78.x and 3.76.1 work fine, as does the Sun
162 make.
163
164 To build in a separate directory you need a make that uses the VPATH
165 variable, for example GNU make.
aa7eb80 branch update
pd authored
166
167
fa44a2c Initial revision
r authored
168 USING FORTRAN
169
f7f10e3 Explain configure command line options.
hornik authored
170 To compile R, you need a FORTRAN compiler or f2c, the FORTRAN-to-C
8d2e6b4 Last minute release changes:
pd authored
171 converter. The default is to search for f77, g77, fort77, f90, xlf,
fae2d08 Also look for fort77.
hornik authored
172 cf77, and fc (in that order), and then for f2c, and use whichever is
173 found first; if none is found, R cannot be compiled. The search
174 mechanism can be changed using the `--with-g77', `--with-f77', and
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
175 `--with-f2c' command line options to configure. If your FORTRAN
785c495 Updated.
hornik authored
176 compiler is in a non-standard location, you should set the enviroment
862b8cb Mention looking at LD_LIBRARY_PATH.
hornik authored
177 variable PATH accordingly before running configure.
178
179 If your FORTRAN libraries are in slightly peculiar places, you should
180 also look at LD_LIBRARY_PATH to make sure that all libraries are on this
181 path.
fa44a2c Initial revision
r authored
182
c7b5dc4 branch update - not bugfree
pd authored
183 You must set whatever compilation flags (if any) are needed to ensure
184 that FORTRAN `integer' is equivalent to a C int pointer and FORTRAN
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
185 `double precision' is equivalent to a C double pointer. This is checked
31eef2a clarify make requirements
ripley authored
186 during the configuration process.
c7b5dc4 branch update - not bugfree
pd authored
187
fa44a2c Initial revision
r authored
188
8aa1433 GNOME dependencies etc
ripley authored
189 BUILDING THE GNOME INTERFACE
190
13d4d93 Minor update to INSTALL for GNOME info
lyndon authored
191 This interface is experimental and currently incomplete. For more
192 information on the GNOME interface and upcoming features, see
193 http://stat.auckland.ac.nz/~lyndon/roadmap.html.
b96c09c list of systems, comments on GNOME, typos
ripley authored
194
8aa1433 GNOME dependencies etc
ripley authored
195 The GNOME interface for R will only be built if you specify it by
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
196 running configure with the --with-gnome option. For example, you might
197 run
8aa1433 GNOME dependencies etc
ripley authored
198
199 ./configure --with-gnome
200
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
201 but please check you have all the requirements first. It is advisable
202 to have reasonably-up-to-date versions of the gnome and gtk+ libraries
203 (later than those in RedHat 6.0, for example). You can find the
8aa1433 GNOME dependencies etc
ripley authored
204 versions you have by
205
206 gnome-config --version
207 gtk-config --version
208
b96c09c list of systems, comments on GNOME, typos
ripley authored
209 We know 1.0.10 and 1.2.3 suffice. Updates are available, for example
17455e4 put back updates.redhat.com
ripley authored
210 from updates.redhat.com or ftp.gurulabs.com/pub/gnome/updates for
211 RPM-based systems. You need the following RPMs and their dependencies
212 installed:
8aa1433 GNOME dependencies etc
ripley authored
213
214 gnome-libs
215 gnome-libs-devel
216 gtk+
217 gtk+-devel
24ccf97 Modified GNOME install info
lyndon authored
218 glib
219 glib-devel
8aa1433 GNOME dependencies etc
ripley authored
220
f7e2276 Clarify libglade requirements
ripley authored
221 You will need also libglade 0.5 or later for correct behaviour. For
222 more information on libglade and to download the source, see
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
223 http://www.daa.com.au/~james/gnome/. The sources are also available
224 from the GNOME ftp site (ftp.gnome.org and mirrors). RPMs are in RedHat
225 6.1 and are available from rawhide.redhat.com.
f69f528 update front matter, including CRAN addresses
ripley authored
226
227 libglade needs libxml 1.4 or later, the source for which is available
f9f3206 Add info on compilation/installation of DVI, info and PDF manuals.
hornik authored
228 from the GNOME ftp site (ftp.gnome.org and mirrors). RPMs of libxml-1.4
229 and libxml-devel-1.4 are available from updates.redhat.com and mirrors,
230 or ftp.gurulabs.com/pub/gnome/updates.
8aa1433 GNOME dependencies etc
ripley authored
231
232
fa44a2c Initial revision
r authored
233 NEW PLATFORMS (Standards Hah!)
234
235 There are a number of sources of problems when installing R on a new
18ec53d syncs from patch branch
pd authored
236 hardware/os platform.
fa44a2c Initial revision
r authored
237
238 1. Floating Point Arithmetic: R supports the POSIX, SVID and IEEE
239 models for floating point arithmetic. The POSIX and SVID models
e05c9c8 perl
maechler authored
240 provide no problems. The IEEE model however can be a pain. The
fa44a2c Initial revision
r authored
241 problem is that there is no agreement on how to set the signalling
242 behavior; sgi/irix and linux require no special action, freebsd
243 requires a call to (the macro) fpsetmask(0) and osf1v3.2 requires
244 that computation be done with a -ieee_with_inexact flag etc...
245 On a new platform you must find out the magic recipe and add some
246 code to make it work. This can often be done via the file
247 config.site which resides in the top level directory.
248
249 2. Shared Libraries: There seems to be very little agreement across
250 platforms on what needs to be done to build shared libraries.
251 there are many different combinations of flags for the compilers
252 and loaders. The technique we use is to interrogate the X window
253 system about what it does (using xmkmf). This often works, but
254 you may have to manually override the results. Scanning the cc(1)
255 and ld(1) manual entries usually reveals the correct incantation.
256 Once you know the recipe you can modify the file config.site
257 (following the instructions therein) so that the build will use
258 these options.
259
260 If you do manage to get R running on a new platform please let us know
261 about it so we can modify the configuration procedures to include that
262 platform.
263
264 If you are having trouble getting R to work on your platform please
265 feel free to get in touch to ask questions. We've had a fair amount
266 of practice at porting R to new platforms...
267
3ade498 Updates
ihaka authored
268 R Core Members
Something went wrong with that request. Please try again.