On 10/06/2013 03:17, Pascal Oettli wrote:
Hello,

I am not sure whether it helps you, but I was able to install it.

OpenSUSE 12.3
R version 3.0.1 Patched (2013-06-09 r62918)
pbdMPI version 0.1-6
gcc version 4.7.2
OpenMPI version 1.6.3

I didn't try with the most recent version of ompi (1.6.4).

But the system used to accept that version of pdbMPI for CRAN used it, with gcc.

The issue here is likely to be using the Intel compiler with OpenMPI. This is a programming matter really off-topic for R-help (see the posting guide). The first port of call for help is the package maintainer, then if that does not help, the R-devel list. But very few R users have access to an Intel compiler, let alone one as recent as that, and you will be expected to use a debugger for yourself (see 'Writing R Extensions').


Regards,
Pascal


On 07/06/13 21:42, Antoine Migeon wrote:
Hello,

I try to install pbdMPI.
Compilation successful, but load fails with segfault.

Is anyone can help me?

R version 3.0.0
pbdMPI version 0.1-6
Intel compiler version 13.1.1
OpenMPI version 1.6.4-1
CPU Intel x86_64

# R CMD INSTALL pbdMPI_0.1-6.tar.gz
..
....
checking for gcc... icc -std=gnu99
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether icc -std=gnu99 accepts -g... yes
checking for icc -std=gnu99 option to accept ISO C89... none needed
checking for mpirun... mpirun
checking for mpiexec... mpiexec
checking for orterun... orterun
checking for sed... /bin/sed
checking for mpicc... mpicc
checking for ompi_info... ompi_info
checking for mpich2version... F
found sed, mpicc, and ompi_info ...
TMP_INC_DIRS = /opt/openmpi/1.6.4-1/intel-13.1.1/include
checking /opt/openmpi/1.6.4-1/intel-13.1.1/include ...
found /opt/openmpi/1.6.4-1/intel-13.1.1/include/mpi.h ...
TMP_LIB_DIRS = /opt/openmpi/1.6.4-1/intel-13.1.1/lib64
checking /opt/openmpi/1.6.4-1/intel-13.1.1/lib64 ...
found /opt/openmpi/1.6.4-1/intel-13.1.1/lib64/libmpi.so ...
found mpi.h and libmpi.so ...
TMP_INC = /opt/openmpi/1.6.4-1/intel-13.1.1/include
TMP_LIB = /opt/openmpi/1.6.4-1/intel-13.1.1/lib64
checking for openpty in -lutil... yes
checking for main in -lpthread... yes

******************* Results of pbdMPI package configure *****************

TMP_INC = /opt/openmpi/1.6.4-1/intel-13.1.1/include
TMP_LIB = /opt/openmpi/1.6.4-1/intel-13.1.1/lib64
MPI_ROOT =
MPITYPE = OPENMPI
MPI_INCLUDE_PATH = /opt/openmpi/1.6.4-1/intel-13.1.1/include
MPI_LIBPATH = /opt/openmpi/1.6.4-1/intel-13.1.1/lib64
MPI_LIBS =  -lutil -lpthread
MPI_DEFS = -DMPI2
MPI_INCL2 =
PKG_CPPFLAGS = -I/opt/openmpi/1.6.4-1/intel-13.1.1/include  -DMPI2
-DOPENMPI
PKG_LIBS = -L/opt/openmpi/1.6.4-1/intel-13.1.1/lib64 -lmpi  -lutil
-lpthread
*************************************************************************
..
icc -std=gnu99 -I/usr/local/R/3.0.0/intel13/lib64/R/include -DNDEBUG
-I/opt/openmpi/1.6.4-1/intel-13.1.1/include  -DMPI2 -DOPENMPI -O3
-fp-model precise -pc 64 -axAVX    -fpic  -O3 -fp-model precise  -pc 64
-axAVX  -c comm_errors.c -o comm_errors.o
icc -std=gnu99 -I/usr/local/R/3.0.0/intel13/lib64/R/include -DNDEBUG
-I/opt/openmpi/1.6.4-1/intel-13.1.1/include  -DMPI2 -DOPENMPI -O3
-fp-model precise -pc 64 -axAVX    -fpic  -O3 -fp-model precise  -pc 64
-axAVX  -c comm_sort_double.c -o comm_sort_double.o
.
..
....
** testing if installed package can be loaded
sh: line 1:  2905 Segmentation fault
'/usr/local/R/3.0.0/intel13/lib64/R/bin/R' --no-save --slave 2>&1 <
/tmp/RtmpGkncGK/file1e541c57190
ERROR: loading failed

  *** caught segfault ***
address (nil), cause 'unknown'

Traceback:
  1: .Call("spmd_initialize", PACKAGE = "pbdMPI")
  2: fun(libname, pkgname)
  3: doTryCatch(return(expr), name, parentenv, handler)
  4: tryCatchOne(expr, names, parentenv, handlers[[1L]])
  5: tryCatchList(expr, classes, parentenv, handlers)
  6: tryCatch(fun(libname, pkgname), error = identity)
  7: runHook(".onLoad", env, package.lib, package)
  8: loadNamespace(package, c(which.lib.loc, lib.loc))
  9: doTryCatch(return(expr), name, parentenv, handler)
10: tryCatchOne(expr, names, parentenv, handlers[[1L]])
11: tryCatchList(expr, classes, parentenv, handlers)
12: tryCatch(expr, error = function(e) {    call <- conditionCall(e)
if (!is.null(call)) {        if (identical(call[[1L]],
quote(doTryCatch)))             call <- sys.call(-4L)        dcall <-
deparse(call)[1L]        prefix <- paste("Error in", dcall, ": ")
LONG <- 75L        msg <- conditionMessage(e)        sm <- strsplit(msg,
"\n")[[1L]]        w <- 14L + nchar(dcall, type = "w") + nchar(sm[1L],
type = "w")        if (is.na(w))             w <- 14L + nchar(dcall,
type = "b") + nchar(sm[1L],                 type = "b")        if (w >
LONG)             prefix <- paste0(prefix, "\n  ")    }    else prefix
<- "Error : "    msg <- paste0(prefix, conditionMessage(e), "\n")
.Internal(seterrmessage(msg[1L]))    if (!silent &&
identical(getOption("show.error.messages"),         TRUE)) {
cat(msg, file = stderr())        .Internal(printDeferredWarnings())
}    invisible(structure(msg, class = "try-error", condition = e))})
13: try({    ns <- loadNamespace(package, c(which.lib.loc, lib.loc))
env <- attachNamespace(ns, pos = pos, deps)})
14: library(pkg_name, lib.loc = lib, character.only = TRUE,
logical.return = TRUE)
15: withCallingHandlers(expr, packageStartupMessage = function(c)
invokeRestart("muffleMessage"))
16: suppressPackageStartupMessages(library(pkg_name, lib.loc = lib,
character.only = TRUE, logical.return = TRUE))
17: doTryCatch(return(expr), name, parentenv, handler)
18: tryCatchOne(expr, names, parentenv, handlers[[1L]])
19: tryCatchList(expr, classes, parentenv, handlers)
20: tryCatch(expr, error = function(e) {    call <- conditionCall(e)
if (!is.null(call)) {        if (identical(call[[1L]],
quote(doTryCatch)))             call <- sys.call(-4L)        dcall <-
deparse(call)[1L]        prefix <- paste("Error in", dcall, ": ")
LONG <- 75L        msg <- conditionMessage(e)        sm <- strsplit(msg,
"\n")[[1L]]        w <- 14L + nchar(dcall, type = "w") + nchar(sm[1L],
type = "w")        if (is.na(w))             w <- 14L + nchar(dcall,
type = "b") + nchar(sm[1L],                 type = "b")        if (w >
LONG)             prefix <- paste0(prefix, "\n  ")    }    else prefix
<- "Error : "    msg <- paste0(prefix, conditionMessage(e), "\n")
.Internal(seterrmessage(msg[1L]))    if (!silent &&
identical(getOption("show.error.messages"),         TRUE)) {
cat(msg, file = stderr())        .Internal(printDeferredWarnings())
}    invisible(structure(msg, class = "try-error", condition = e))})
21: try(suppressPackageStartupMessages(library(pkg_name, lib.loc =
lib,     character.only = TRUE, logical.return = TRUE)))
22: tools:::.test_load_package("pbdMPI",
"/usr/local/R/3.0.0/intel13/lib64/R/library")
aborting ...



______________________________________________
R-help@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,                  rip...@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

______________________________________________
R-help@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.

Reply via email to