Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rhub Solaris fails to compile RcppEigen package #109

Closed
lukesonnet opened this issue Feb 14, 2018 · 8 comments
Closed

rhub Solaris fails to compile RcppEigen package #109

lukesonnet opened this issue Feb 14, 2018 · 8 comments

Comments

@lukesonnet
Copy link

lukesonnet commented Feb 14, 2018

I'm having trouble checking a package that uses RcppEigen using the Solaris platform. I get the following message when it tries to install my package:

Installing package into ‘/export/home/XVshGHo/R’
(as ‘lib’ is unspecified)
* installing *source* package ‘estimatr’ ...
** libs
/opt/csw/bin/g++ -std=gnu++11 -I/opt/R/R-3.4.1-patched-gcc/lib/R/include -DNDEBUG  -I"/export/home/XVshGHo/R/Rcpp/include" -I"/export/home/XVshGHo/R/RcppEigen/include" -I/opt/csw/include -I/usr/local/include   -fPIC  -O2 -c RcppExports.cpp -o RcppExports.o
In file included from /opt/csw/include/c++/5.2.0/cmath:44:0,
                 from /export/home/XVshGHo/R/Rcpp/include/Rcpp/platform/compiler.h:100,
                 from /export/home/XVshGHo/R/Rcpp/include/Rcpp/r/headers.h:48,
                 from /export/home/XVshGHo/R/Rcpp/include/RcppCommon.h:38,
                 from /export/home/XVshGHo/R/RcppEigen/include/RcppEigenForward.h:26,
                 from /export/home/XVshGHo/R/RcppEigen/include/RcppEigen.h:25,
                 from RcppExports.cpp:4:
/usr/include/math.h:45:12: error: ‘std::float_t’ has not been declared
 using std::float_t;
            ^
/usr/include/math.h:46:12: error: ‘std::double_t’ has not been declared
 using std::double_t;
            ^
/usr/include/math.h:48:12: error: ‘std::fpclassify’ has not been declared
 using std::fpclassify;
            ^
/usr/include/math.h:49:12: error: ‘std::isfinite’ has not been declared
 using std::isfinite;
            ^
/usr/include/math.h:50:12: error: ‘std::isinf’ has not been declared
 using std::isinf;
            ^
/usr/include/math.h:51:12: error: ‘std::isnan’ has not been declared
 using std::isnan;
            ^
/usr/include/math.h:52:12: error: ‘std::isnormal’ has not been declared
 using std::isnormal;
            ^
/usr/include/math.h:53:12: error: ‘std::signbit’ has not been declared
 using std::signbit;
            ^
/usr/include/math.h:55:12: error: ‘std::isgreater’ has not been declared
 using std::isgreater;
            ^
/usr/include/math.h:56:12: error: ‘std::isgreaterequal’ has not been declared
 using std::isgreaterequal;
            ^
/usr/include/math.h:57:12: error: ‘std::isless’ has not been declared
 using std::isless;
            ^
/usr/include/math.h:58:12: error: ‘std::islessequal’ has not been declared
 using std::islessequal;
            ^
/usr/include/math.h:59:12: error: ‘std::islessgreater’ has not been declared
 using std::islessgreater;
            ^
/usr/include/math.h:60:12: error: ‘std::isunordered’ has not been declared
 using std::isunordered;
            ^
/usr/include/math.h:62:12: error: ‘std::acosh’ has not been declared
 using std::acosh;
            ^
/usr/include/math.h:63:12: error: ‘std::asinh’ has not been declared
 using std::asinh;
            ^
/usr/include/math.h:64:12: error: ‘std::atanh’ has not been declared
 using std::atanh;
            ^
/usr/include/math.h:65:12: error: ‘std::cbrt’ has not been declared
 using std::cbrt;
            ^
/usr/include/math.h:66:12: error: ‘std::copysign’ has not been declared
 using std::copysign;
            ^
/usr/include/math.h:67:12: error: ‘std::erf’ has not been declared
 using std::erf;
            ^
/usr/include/math.h:68:12: error: ‘std::erfc’ has not been declared
 using std::erfc;
            ^
/usr/include/math.h:69:12: error: ‘std::exp2’ has not been declared
 using std::exp2;
            ^
/usr/include/math.h:70:12: error: ‘std::expm1’ has not been declared
 using std::expm1;
            ^
/usr/include/math.h:71:12: error: ‘std::fdim’ has not been declared
 using std::fdim;
            ^
/usr/include/math.h:72:12: error: ‘std::fma’ has not been declared
 using std::fma;
            ^
/usr/include/math.h:73:12: error: ‘std::fmax’ has not been declared
 using std::fmax;
            ^
/usr/include/math.h:74:12: error: ‘std::fmin’ has not been declared
 using std::fmin;
            ^
/usr/include/math.h:75:12: error: ‘std::hypot’ has not been declared
 using std::hypot;
            ^
/usr/include/math.h:76:12: error: ‘std::ilogb’ has not been declared
 using std::ilogb;
            ^
/usr/include/math.h:77:12: error: ‘std::lgamma’ has not been declared
 using std::lgamma;
            ^
/usr/include/math.h:78:12: error: ‘std::llrint’ has not been declared
 using std::llrint;
            ^
/usr/include/math.h:79:12: error: ‘std::llround’ has not been declared
 using std::llround;
            ^
/usr/include/math.h:80:12: error: ‘std::log1p’ has not been declared
 using std::log1p;
            ^
/usr/include/math.h:81:12: error: ‘std::log2’ has not been declared
 using std::log2;
            ^
/usr/include/math.h:82:12: error: ‘std::logb’ has not been declared
 using std::logb;
            ^
/usr/include/math.h:83:12: error: ‘std::lrint’ has not been declared
 using std::lrint;
            ^
/usr/include/math.h:84:12: error: ‘std::lround’ has not been declared
 using std::lround;
            ^
/usr/include/math.h:85:12: error: ‘std::nan’ has not been declared
 using std::nan;
            ^
/usr/include/math.h:86:12: error: ‘std::nanf’ has not been declared
 using std::nanf;
            ^
/usr/include/math.h:87:12: error: ‘std::nanl’ has not been declared
 using std::nanl;
            ^
/usr/include/math.h:88:12: error: ‘std::nearbyint’ has not been declared
 using std::nearbyint;
            ^
/usr/include/math.h:89:12: error: ‘std::nextafter’ has not been declared
 using std::nextafter;
            ^
/usr/include/math.h:90:12: error: ‘std::nexttoward’ has not been declared
 using std::nexttoward;
            ^
/usr/include/math.h:91:12: error: ‘std::remainder’ has not been declared
 using std::remainder;
            ^
/usr/include/math.h:92:12: error: ‘std::remquo’ has not been declared
 using std::remquo;
            ^
/usr/include/math.h:93:12: error: ‘std::rint’ has not been declared
 using std::rint;
            ^
/usr/include/math.h:94:12: error: ‘std::round’ has not been declared
 using std::round;
            ^
/usr/include/math.h:95:12: error: ‘std::scalbln’ has not been declared
 using std::scalbln;
            ^
/usr/include/math.h:96:12: error: ‘std::scalbn’ has not been declared
 using std::scalbn;
            ^
/usr/include/math.h:97:12: error: ‘std::tgamma’ has not been declared
 using std::tgamma;
            ^
/usr/include/math.h:98:12: error: ‘std::trunc’ has not been declared
 using std::trunc;
            ^
gmake: *** [/opt/R/R-3.4.1-patched-gcc/lib/R/etc/Makeconf:168: RcppExports.o] Error 1
ERROR: compilation failed for package ‘estimatr’
* removing ‘/export/home/XVshGHo/R/estimatr’
Warning message:
In i.p(...) :
  installation of package ‘/export/home/XVshGHo/Rtemp/RtmpN0aWXP/remotes538e73213918/estimatr’ had non-zero exit status

I'm trying to build in Solaris as we had an Error in our CRAN check that we would like to replicate and then fix. Not sure if this problem is known on rhub re: RcppEigen.

I'm also not sure if there's a way for me to incorporate Ripley's config: https://www.stats.ox.ac.uk/pub/bdr/Rconfig/r-patched-solaris-x86

This could also be a problem with RcppEigen? I'm just not sure and any advice would be appreciated, thanks.

edit: as you can see, it passes fine on CRAN's solaris machine https://www.r-project.org/nosvn/R.check/r-patched-solaris-x86/estimatr-00check.html

@mooresm
Copy link

mooresm commented Feb 15, 2018

This is an issue for me as well. I'm trying to fix a compile error on Solaris, but don't have any Solaris machine available to test it on. The error message that I get is slightly different:

checking package dependencies
Packages required but not available: ‘Rcpp’ ‘RcppEigen’

@lukesonnet
Copy link
Author

lukesonnet commented Feb 15, 2018

If you scroll up in the log, can you see where it failed to install RcppEigen?

@mooresm
Copy link

mooresm commented Feb 15, 2018

It looks like it is due to a disk space issue on the Solaris server (see below). The log is available here

193#> trying URL 'https://cran.r-hub.io/src/contrib/Rcpp_0.12.15.tar.gz'
194#> Content type 'application/x-gzip' length 3762481 bytes (3.6 MB)
195#> ==================================================
196#> downloaded 3.6 MB
197#> trying URL 'https://cran.r-hub.io/src/contrib/RcppEigen_0.3.3.4.0.tar.gz'
198#> Content type 'application/x-gzip' length 1631870 bytes (1.6 MB)
199#> ==================================================
200#> downloaded 1.6 MB

591#> ERROR: dependency ‘Rcpp’ is not available for package ‘plyr’
592#> * removing ‘/export/home/XHxxLM0/R/plyr’
593#> Warning in close.connection(out) :
594#> Problem closing connection: No space left on device

@jmgirard
Copy link

jmgirard commented Aug 1, 2018

I am having a similar issue with solaris running out of space while installing package dependencies:
https://builder.r-hub.io/status/original/circumplex_0.1.1.9001.tar.gz-291dbf0389ac4c1fa027c8f5e912f064

@gaborcsardi
Copy link
Collaborator

Cleaned up, should be ok now.

@muschellij2
Copy link

@gchung05
Copy link

Getting a similar error but for Windows: https://builder.r-hub.io/status/ANTsRCore_0.5.6.2.tar.gz-f3fcfdbe914d485d88462a5e41664db7#L254

Like @muschellij2 , having an issue on Windows Server 2008 with "No space left on device". Originally posted on Issue #176

@gaborcsardi
Copy link
Collaborator

RcppEigen compiles just fine now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants