[Rd] Compilers on Solaris: beware!

ripley@stats.ox.ac.uk ripley@stats.ox.ac.uk
Tue Feb 11 19:14:02 2003

We've just upgraded our Sun compilers from (top line of cc -V)

cc: Sun WorkShop 6 update 1 C 5.2 2000/09/11

(aka Forte 6) to

cc: Forte Developer 7 C 5.4 2002/03/09

although the later seem to be known as Sun ONE these days.  A few comments
which may be helpful to other users:

1) It seems that to use C++ code (e.g. package Matrix) you now need to
add -lCstd to SHLIB_CXXLDFLAGS.  We will look into making configure do 
that automatically.

2) To get libsunperf recognized under v9 (64-bit) options you need
--with-blas="-xlic_lib=sunperf": this is already in the configure script 
for R-devel.

3) libsunperf now seems to have the LAPACK entry points which were
missing, and works well under 32-bit builds providing both BLAS and
LAPACK, although it does send the occasional error message to stderr.  
*However* it has gone from bad to worse for a 64-bit build, with 
information enquiries about workspace sizes generating errors.  (It is 
strange that they do work in 32-bit builds.)

Also gcc 3.2.2 has a fatal optimization bug on Solaris, and code generated 
with -O2 causes R's graphics devices to crash (the problem being the 
DevDesc* pointer at the end of the arg sequence is not passed correctly).
Avoiding optimization seems a partial cure, and I've reverted to gcc 3.2.

I have updated the R-admin manual, but only in R-devel.


Brian D. Ripley,                  ripley@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 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595