[Rcpp-devel] R CMD check fails on latest RcppEigen using R-devel on Windows

Henrik Singmann henrik.singmann at psychologie.uni-freiburg.de
Thu Mar 12 20:37:07 CET 2015

Dear all,

In the process of preparing to submit an updated version of a package of mine to CRAN, the R CMD check on my package always failed (i.e., the R instance crashed) when running the 32bit examples involving RcppEigen.

On further investigating, it seems that this is already true for the version of my package on CRAN (http://cran.r-project.org/web/checks/check_results_MPTinR.html), but also for other packages involving RcppEigen such as lme4 (http://cran.r-project.org/web/checks/check_results_lme4.html) and even RcppEigen itself (http://cran.r-project.org/web/checks/check_results_RcppEigen.html)

I can confirm the error shown at the CRAN check results for RcppEigen on my own machines (Win 7 64 bit and Win 8.1, both 64 bit versions) when downloading the RcppEigen source and running R CMD check using R-devel on it (see below for logs and sessionInfo).

As I said, the problem only occurs on the 32 bit versions (i386) and kills the R process (with uninformative Windows error message).

Can someone else using Windows confirm this behavior on the latest R-devel? Any ideas on what to do? Or should I perhaps send this to R-devel instead of here as it seems to be also related to R-devel?

Btw, I am using the latest R tools and R-devel, both downloaded today.


####### The log gives:

** running tests for arch 'i386' ... ERROR
Running the tests in 'tests/doRUnit.R' failed.
Last 13 lines of output:
   Executing test function test.as.SpMat  ...  done successfully.
   Executing test function test.as.Vec  ...  done successfully.

   Executing test function test.wrap.R  ...  done successfully.
   Executing test function test.fastLm  ...

####### doRUnit.Rout.fail

R Under development (unstable) (2015-03-11 r67980) -- "Unsuffered Consequences"
Copyright (C) 2015 The R Foundation for Statistical Computing
Platform: i386-w64-mingw32/i386 (32-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> #### doRUnit.R --- Run RUnit tests
> ####------------------------------------------------------------------------
> ### borrowed from package fUtilities in RMetrics
> ### http://r-forge.r-project.org/plugins/scmsvn/viewcvs.php/pkg/fUtilities/tests/doRUnit.R?rev=1958&root=rmetrics&view=markup
> ### Originally follows Gregor Gojanc's example in CRAN package  'gdata'
> ### and the corresponding section in the R Wiki:
> ###  http://wiki.r-project.org/rwiki/doku.php?id=developers:runit
> ### MM: Vastly changed:  This should also be "runnable" for *installed*
> ##              package which has no ./tests/
> ## ----> put the bulk of the code e.g. in  ../inst/unitTests/runTests.R :
> if(require("RUnit", quietly = TRUE)) {
+     pkg <- "RcppEigen"
+     require( pkg, character.only=TRUE)
+     path <- system.file("unitTests", package = pkg)
+     stopifnot(file.exists(path), file.info(path.expand(path))$isdir)
+     ## without this, we get unit test failures
+     Sys.setenv( R_TESTS = "" )
+     RcppEigen.unit.test.output.dir <- getwd()
+     source(file.path(path, "runTests.R"), echo = TRUE)
+ } else {
+     print( "package RUnit not available, cannot run unit tests" )
+ }
Loading required package: RcppEigen

> pkg <- "RcppEigen"

> if (!require("inline", character.only = TRUE, quietly = TRUE)) {
+     stop("The inline package is required to run RcppEigen unit tests")
+ }

> if (compareVersion(packageDescription("inline")[["Version"]],
+     "0.3.5") < 0) {
+     stop("RcppEigen unit tests need at least the version 0.3. ..." ... [TRUNCATED]

> if (require("RUnit", quietly = TRUE)) {
+     is_local <- function() {
+         if (exists("argv", globalenv()) && "--local" %in% argv)
+          .... [TRUNCATED]

Executing test function test.as.MMat  ...  done successfully.

Executing test function test.as.MSpMat  ...  done successfully.

Executing test function test.as.MVec  ...  done successfully.

Executing test function test.as.SpMat  ...  done successfully.

Executing test function test.as.Vec  ...  done successfully.

Executing test function test.wrap.R  ...  done successfully.

Executing test function test.fastLm  ...

###### a session info of my machine:
> sessionInfo()
R Under development (unstable) (2015-03-11 r67980)
Platform: i386-w64-mingw32/i386 (32-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1

[1] LC_COLLATE=German_Switzerland.1252  LC_CTYPE=German_Switzerland.1252    LC_MONETARY=German_Switzerland.1252
[4] LC_NUMERIC=C                        LC_TIME=German_Switzerland.1252

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

other attached packages:
[1] RcppEigen_0. devtools_1.6.1

loaded via a namespace (and not attached):
[1] Matrix_1.1-5    tools_3.2.0     Rcpp_0.11.5     grid_3.2.0      lattice_0.20-30 fortunes_1.5-2

Dr. Henrik Singmann
Universität Zürich, Schweiz

More information about the Rcpp-devel mailing list