[R] Compiling R for Solaris 10 Intel

Prof Brian Ripley ripley at stats.ox.ac.uk
Wed Jan 7 23:34:22 CET 2009


That is a rather old compiler.  R on Intel Solaris works better with the 
(free) Sun compilers, but I have built R on x86 Solaris with gcc 4.0.x 
(I think 4.0.3): I have never made a 64-bit build work with gcc.

One thing to make sure is that the compiler was actually built for
Solaris 10 (and not say 9).

I have to say that most reports we have on non-native compilers on OSes
boil down to compiler bugs, and the first step is turn all optimization 
off and see if the problem disappears.


Sul, Young L wrote:
> Hi,
> 
> I downloaded 2.8.1 and tried to compile it using gcc 3.4.6. (simple install, just ./configure, make, make check, make install)
> 
> I found that it compiled and went through the tests fine.
> 
> The foreign library, however, that seems to be segfaulting on me (see output below). I did see an old posting about a similar problem, but there was no resolution. Have other people experienced this at all?
> 
> Tia!
> -y
> 
>> library(foreign)
> 
>  *** caught segfault ***
> address fe899a60, cause 'invalid permissions'
> 
> Traceback:
>  1: .C("spss_init", PACKAGE = "foreign")
>  2: fun(...)
>  3: doTryCatch(return(expr), name, parentenv, handler)
>  4: tryCatchOne(expr, names, parentenv, handlers[[1]])
>  5: tryCatchList(expr, classes, parentenv, handlers)
>  6: tryCatch(expr, error = function(e) {    call <- conditionCall(e)    if (!is.null(call)) {        if (identical(call[[1]], quote(doTryCatch)))             call <- sys.call(-4)        dcall <- deparse(call)[1]        prefix <- paste("Error in", dcall, ": ")        LONG <- 75        msg <- conditionMessage(e)        sm <- strsplit(msg, "\n")[[1]]        if (14 + nchar(dcall, type = "w") + nchar(sm[1], type = "w") >             LONG)             prefix <- paste(prefix, "\n  ", sep = "")    }    else prefix <- "Error : "    msg <- paste(prefix, conditionMessage(e), "\n", sep = "")    .Internal(seterrmessage(msg[1]))    if (!silent && identical(getOption("show.error.messages"),         TRUE)) {        cat(msg, file = stderr())        .Internal(printDeferredWarnings())    }    invisible(structure(msg, class = "try-error"))})
>  7: try({    fun(...)    NULL})
>  8: runHook(".onLoad", package, env, package.lib, package)
>  9: loadNamespace(package, c(which.lib.loc, lib.loc), keep.source = keep.source)
> 10: doTryCatch(return(expr), name, parentenv, handler)
> 11: tryCatchOne(expr, names, parentenv, handlers[[1]])
> 12: tryCatchList(expr, classes, parentenv, handlers)
> 13: tryCatch(expr, error = function(e) {    call <- conditionCall(e)    if (!is.null(call)) {        if (identical(call[[1]], quote(doTryCatch)))             call <- sys.call(-4)        dcall <- deparse(call)[1]        prefix <- paste("Error in", dcall, ": ")        LONG <- 75        msg <- conditionMessage(e)        sm <- strsplit(msg, "\n")[[1]]        if (14 + nchar(dcall, type = "w") + nchar(sm[1], type = "w") >             LONG)             prefix <- paste(prefix, "\n  ", sep = "")    }    else prefix <- "Error : "    msg <- paste(prefix, conditionMessage(e), "\n", sep = "")    .Internal(seterrmessage(msg[1]))    if (!silent && identical(getOption("show.error.messages"),         TRUE)) {        cat(msg, file = stderr())        .Internal(printDeferredWarnings())    }    invisible(structure(msg, class = "try-error"))})
> 14: try({    ns <- loadNamespace(package, c(which.lib.loc, lib.loc), keep.source = keep.source)    dataPath <- file.path(which.lib.loc, package, "data")    env <- attachNamespace(ns, pos = pos, dataPath = dataPath)})
> 15: library(foreign)
> 
> Possible actions:
> 1: abort (with core dump, if enabled)
> 2: normal R exit
> 3: exit R without saving workspace
> 4: exit R saving workspace
> Selection: 4
> 
> 	[[alternative HTML version deleted]]
> 
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.


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




More information about the R-help mailing list