Rev 18144 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed
R 1.4.1 for Windows====================This distribution contains the sources to build a port of R-1.4.1 torun on Windows 95, 98, ME, NT4, 2000 and XP on Intel/clone chips. See thefile `readme' for fuller details, including how to install the binaryversions.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' withcurrent 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, grep, ls, mkdir, mv, rm, sed, touch; we usethose from the cygwin distribution(http://www.cygwin.com/mirrors.html) or (gzip, makeinfo, texindex)compiled from the sources. We have packaged a set athttp://www.stats.ox.ac.uk/pub/Rtools/tools.zip. You may need to copysh.exe to c:\bin\sh.exe; the exact circumstances are mysterious, butthe error message will be `make[1]: /bin/sh.exe: Command not found'.BEWARE: `Native' ports of make are _not_ suitable (including that atthe mingw site). There were also problems with several earlierversions of the cygwin tools and dll. To avoid frustration, pleaseuse our tool set, and make sure it is at the front of your path.We recommend that you use a recent snapshot of the Mingw port of gccfrom http://sourceforge.net/projects/mingw/. For example, at the timeof writing, MinGW-1.1.tar.gz based on gcc-2.95.3. Just unpack thissomewhere and put its bin directory in your path, *after* our tools.No earlier Mingw compiler has been tested and support for using theCygwin compiler has been withdrawn. If you see errors about `-shared'not being understood or `__imp_foo' missing, you are not using therecommended compiler.The Windows port of perl5, available viahttp://www.activestate.com/Products/ActivePerl/.zip and unzip from the Info-ZIP project (http://www.info-zip.org andmirrors, and included in our tools.zip).The zlib-1.1.3 sources from http://www.gzip.org/zlib/ and mirrors.Unpack this from this directory byunzip zlib113.zip -d bitmap/zlibIf you want to make compiled html (.chm) files you will need theMicrosoft HTML Help Workshop, currently available for download athttp://msdn.microsoft.com/library/en-us/htmlhelp/html/hwMicrosoftHTMLHelpDownloads.aspand http://www.microsoft.com/office/ork/xp/appndx/appa06.htmYou may need this on the same drive as the other tools. (Although wehave successfully used it elsewhere, others have reported problems).If you want to make Window help files you will need hcrtf.exe from aWindows compiler installation (this has been available for download atftp://ftp.microsoft.com/softlib/mslfiles/hcwsetup.exe).All of these need to be installed and in your path, and theappropriate environment variables set.Building--------You also need the R source (R-1.4.1.tgz).Then: untar R-1.4.1.tgz somewhere (with no spaces in the path names),cd /somewhere/R-1.4.1/src/gnuwin32IMPORTANT: edit MkRules to set the appropriate paths as needed.Edit Makefile to set the type(s) of help that you want built.and runmakeNote 1: the file rw1042\unzip\unzip32.dll is not in the sourcedistribution. It can be found in file unz542dN.zip at any Info-ZIPmirror, or you can copy it from a binary distribution.The file rw1042\bin\Rchtml.dll is only built if CHM help is specifiedin the main Makefile. Its source is the help directory, and you needthe HTML Help Workshop files to build it. It contains instructionsto build it under VC++6, and it is preferable to use that as theVC++ library will check versions of the components needed. You can justcopy this from a binary distribution.Note 2: we have had reports that Norton Anti-Virus locks up themachine 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 isused. You can opt out of this by commenting the line LEA_MALLOC=YESin the Makefile, in which case the Windows malloc is used. The onein crtdll.dll is unlikely to be satisfactory: the one in msvcrt.dlldoes 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 thepath to the libraries in macro ATLAS_PATH. You will need to build thelibraries optimized for your architecture under the Cygwin compilers.(The pre-compiled libraries on that site are for Compaq VisualFortran, and you need to compile for g77.)You can test a build by `make check': expect some differences in thetests of the print routines. You may need to set TMPDIR to a suitabletemporary directory: the default is c:\TEMP.Building bitmap device support------------------------------The file rw1042\bin\Rbitmap.dll is not built automatically:instructions on how to build it are in the file bitmap\INSTALL.Building Tcl/Tk support-----------------------The TclTk support package is not built automatically. To use this youneed to download and install ActiveTcl 8.3 fromhttp://aspn.activestate.com/ASPN/Downloads/ActiveTcl/ and set TCL_HOMEin MkRules to where you installed it (perhaps c:/Program Files/Tcl).Thenmake tclwill make the package.The TclTk support package is not built automatically. To use this youBuilding the Manuals====================To make the PDF versions of the manuals you will need pdftex installedand configured to work with a large file: see doc/manual/README. Youalso need texindex (included in our tool set). Then the pdf manualscan be made bymake docsIf you want to make the info versions (not the Reference Manual), youwill need a version of makeinfo 4.0 (included in our tool set). Thencd ../../doc/manualmake -f Makefile.win infowill make the info files.To make DVI versions of the manuals usecd ../../doc/manualmake -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) usecd ../../doc/manualmake -f Makefile.win htmlThis makes use of tidy.exe, from http://www.w3.org/.The fptex distribution of TeX (via www.fptex.org) includes a suitableport of pdftex.Building the installers=======================See installer/INSTALL. You need a complete R build first, includingbitmap and Tcl/Tk support and the manuals, as well as the recommendedpackages in R-1.4.1-recommended.tgz.Recommended packages====================The recommended packages can in the main be built as any other package.boot, cluster, nlme, rpart and survival should be made withRcmd INSTALL --use-zipKernSmooth, mgcv and VR can be made by Rcmd INSTALL. Package spatial(in VR) will not work if its data directory is zipped.foreign needs more work: unpack it and rename src/*.h.in to remove .infrom the names. Then INSTALL the package.You cannot currently use Rcmd CHECK to install and check a packagewith --use-zip.Cross-building on ix86 Linux============================You will need i386-mingw32 cross-compilers installed and in your path,and you probably need ones targetted at msvcrt.dll. There iscurrently a complete set of tools athttp://www.stats.ox.ac.uk/pub/Rtools/mingw-cross.tar.bz2(Just unpack this somewhere and put its bin directory in your path.)You will need Perl, zip and unzip installed.You also need the R source (R-1.4.1.tgz).Then: untar R-1.4.1.tgz somewhere, andcd /somewhere/R-1.4.1/src/gnuwin32Edit MkRules to set BUILD=CROSS and the appropriate paths (includingHEADER) as needed.Edit Makefile to set the type(s) of help that you want built. (Youwill not be able to cross-build .chm or .hlp files, so set WINHELP toNO.)Packages can be made in the same way as natively: see the filereadme.packages. You will need to set STAMP=NO, e.g.make STAMP=NO pkg-fooNote that to cross-build the methods package you need a working copyof this version of R on the Linux system.(It is possible to cross-build the main installers using WINE, whichwe leave as an exercise for the reader.)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>