I wrote about my problems building R-0.63.3 on a Digital Alpha running OSF V4.0D. Thanks to the suggestion Jonathan.Yuen at tvs.slu.se, I tried using the DEC CC compiler instead of gcc, and it worked just fine. (Seeing that I needed gmake to build, it never occured to me to try DEC CC. It seems that you cannot combine DEC F77 with gcc; I do not have g77 to try.) Below is a set of instructions which happily builds R on my Alphas. Paul Szabo - System Manager // School of Mathematics and Statistics psz at maths.usyd.edu.au // University of Sydney, NSW 2006, Australia --- #!/bin/ksh - set -x V=R-0.63.3 gzcat $V.tgz | tar xf - cd $V : 'Versions (for the record):' : '% uname -a' : 'OSF1 turin.maths.usyd.edu.au V4.0 878 alpha' : '% sizer -v ' : 'Digital UNIX V4.0D (Rev. 878); Tue Dec 15 07:43:31 EST 1998 ' : : 'Set values in config.site:' : 'use DEC C and F77 compilers with appropriate options, GNU make.' : '(Cannot use gcc with DEC F77; we do not have g77)' : '(Need GNU make, DEC make fails in several respects)' cp -ip config.site config.site.bak <&- >&- 2>&- cat <<EOF >> config.site CC=/usr/bin/cc CFLAGS='-g3 -O' FC=/usr/bin/f77 FFLAGS='-g3 -O' DLLFLAGS=-nofor_main MAKE=gmake EOF ./configure : : 'Fix some bugs:' : : 'Will get compiler warnings:' : ' In this statement, the expression "j=++j%k" modifies the variable "j" more' : ' than once without an intervening sequence point. This behavior is undefined.' : 'in src/main/subassign.c, line 928 and src/main/subset.c, line 376.' : 'What to do about them (do they matter)?' : : 'Fix a line in plot.c (look in PLATFORMS file)' perl -i.bak -pe 's/(if \(FINITE.asp. .. asp > 0)(\) \{)$/$1 \&\& asp != NA_REAL$2/' src/main/plot.c : : 'Reportedly there are bugs in src/graphics/graphics.c : add the line' : ' extern double pow(double, double); ' : 'to Mathlib.h ??' : : 'No dependency: only remake when needed' perl -i.bak -pe 's/::$/:/' src/unix/Makefile : : 'Get rid of pesky "ARGUMENT '"''"' __ignored__" message' : '(This bug is in DEC /bin/sh, not in R: use ksh instead)' perl -i.bak -pe 's:/bin/sh:/bin/ksh:' src/scripts/R.sh : : '(I like to make my installations simple... can R adopt this scheme?)' : 'Install man pages in RHOME, with symlinks from /usr/local/man/man1' perl -i.bak -pe 's/mandir/rhome/ unless m/cd/; s/^\t.(.cd ..mandir)/\t-$1/; print "\t for f in R.1 Rdconv.1; do rm -f \$\$f; \$(LN_S) \$(rhome)/man1/\$\$f \$\$f; done; \\\n" if m/in Rd2txt/' doc/Makefile : : 'Install with symlinks from /usr/local/bin' perl -i.bak -pe 's:^.*cat .* ..bindir./R$:\techo Not doing /usr/local/bin/R yet:; s: ..bindir./R : : if m/chmod/; s/^.*(for f in )(Rd2txt )/\t-$1R $2/; s:^(.*)..INSTALL. (.*) (..bindir.):$1\$(LN_S) \$(rhome)/$2 $3:;' Makefile gmake : 'To install the lot, need to do as root: mkdir /usr/local/lib/R chown psz /usr/local/lib/R On the machine with /usr/local do (as psz): gmake install and finally again as root: chown -R bin.bin /usr/local/lib/R chmod -R go=rX /usr/local/lib/R ln -s /usr/local/lib/R/man1/R.1 /usr/local/man/man1 ln -s /usr/local/lib/R/man1/Rdconv.1 /usr/local/man/man1 ln -s Rdconv.1 /usr/local/man/man1/Rd2txt.1 ln -s Rdconv.1 /usr/local/man/man1/Rdindex.1 ln -s Rdconv.1 /usr/local/man/man1/Sd2Rd.1 ln -s /usr/local/lib/R/bin/R /usr/local/bin ln -s /usr/local/lib/R/bin/Rd2txt /usr/local/bin ln -s /usr/local/lib/R/bin/Rdconv /usr/local/bin ln -s /usr/local/lib/R/bin/Rdindex /usr/local/bin ln -s /usr/local/lib/R/bin/Sd2Rd /usr/local/bin ' -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._