R-beta: Sun native compiler SC2.0.1, R-0.62.x

Prof Brian D Ripley ripley at stats.ox.ac.uk
Sun Sep 13 09:52:19 CEST 1998

On Sat, 12 Sep 1998 gordon.harrington at uni.edu wrote:

> Several multiple definition fatal errors occur compiling R-0.62.2 and more with
> 0.62.3 using the Sun native compiler SC2.0.1. Earlier versions of R did not
> present the problem. It does not occur with gcc.

You don't say what OS (and SunPro compilers do not only apply to Suns, let
alone two OSes and at least 3 architectures on Suns). As far as I can
remember SC2.0.1 was not `native' but an additional cost-product from a
separate Sun company. 

I just wanted to point out that is a _very_ old SunPro compiler: the
current version on both Solaris and SunOS is at least SC4.2, and I see we
used SC3.0.1 in 1994.  I doubt if people are trying gcc of similar age
(2.5.x?), and if they were I would expect problems with header files.

> The problem lies in the SC2.0.1 library in sunmath.h which is not fully ANSI
> compliant. The compiler, with appropriate options, compiles non-ANSI usages but
> does not recognize alternatives as aliases of each other. Thus it will properly
> compile either "long" or "int" but it will not accept a variable which is
> defined as "int" in one place and as "long" in another. I have not seen any
> released patch for the includes to make them ANSI compliant.

There are very many released patches to the Sun compilers, but I think it
is unrealistic to expect them to still be available for so long superseded
a product.

> Since R is a work in progress it seems better to use gcc than to tinker with
> the Sun library or with program coding to gain the slight advantages of native
> compiler optimization. 

On Solaris fairly recent versions of cc work: as indeed is listed in
PLATFORMS.  Those of us who have tried both cc (SC4.x) and gcc (2.8.1) with
R see very little advantage to cc: I posted some comparative timings a
while ago (possibly to R-devel) that showed negligible differences.

A small point for R-core: PLATFORMS lists rather precise OS versions (e.g.
Solaris 2.5.1) but not compiler versions which are probably more critical. 

Brian D. Ripley,                  ripley at stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272860 (secr)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595

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

More information about the R-help mailing list