rstudio / promises

A promise library for R
https://rstudio.github.io/promises
Other
198 stars 19 forks source link

promises fails to install RHEL under R 3.4.4 #24

Closed kmiddleton closed 6 years ago

kmiddleton commented 6 years ago

Trying to install promises under RHEL, it fails early in the compilation:

* installing *source* package ‘promises’ ...
** libs
g++ -m64  -I/usr/include/R -DNDEBUG  -I"/usr/lib64/R/library/later/include" -I"/usr/lib64/R/library/Rcpp/include" -I/usr/local/include   -fpic  -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic  -c RcppExports.cpp -o RcppExports.o
g++ -m64  -I/usr/include/R -DNDEBUG  -I"/usr/lib64/R/library/later/include" -I"/usr/lib64/R/library/Rcpp/include" -I/usr/local/include   -fpic  -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic  -c promise_task.cpp -o promise_task.o
promise_task.cpp:2:23: fatal error: later_api.h: No such file or directory
 #include <later_api.h>
                       ^
compilation terminated.
make: *** [promise_task.o] Error 1
ERROR: compilation failed for package ‘promises’

Any idea what's going on here? I know R is at 3.5 now, but RHEL is slow to adopt updates, so I'm stuck with 3.4.4 unless I compile R myself.

My sessionInfo():

R version 3.4.4 (2018-03-15)
Platform: x86_64-redhat-linux-gnu (64-bit)
Running under: Red Hat Enterprise Linux

Matrix products: default
BLAS/LAPACK: /usr/lib64/R/lib/libRblas.so

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

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

loaded via a namespace (and not attached):
 [1] httr_1.3.1      compiler_3.4.4  R6_2.2.2        tools_3.4.4    
 [5] withr_2.1.2     curl_3.2        memoise_1.1.0   knitr_1.20     
 [9] git2r_0.21.0    digest_0.6.15   devtools_1.13.5
kmiddleton commented 6 years ago

To follow up my own issue, this appears to be an R 3.4 vs. R 3.5 issue. promises installs fine on 3.5.

kmiddleton commented 6 years ago

I'm going to reopen this issue. I've updated to R 3.5 globally via epel-testing (rather than using a complied version at the user level), and promises is failing to install with:

* installing *source* package ‘promises’ ...
** libs
g++ -m64  -I"/usr/include/R" -DNDEBUG  -I"/usr/lib64/R/library/later/include" -I"/usr/lib64/R/library/Rcpp/include" -I/usr/local/include   -fpic  -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic  -c RcppExports.cpp -o RcppExports.o
g++ -m64  -I"/usr/include/R" -DNDEBUG  -I"/usr/lib64/R/library/later/include" -I"/usr/lib64/R/library/Rcpp/include" -I/usr/local/include   -fpic  -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic  -c promise_task.cpp -o promise_task.o
promise_task.cpp:2:23: fatal error: later_api.h: No such file or directory
 #include <later_api.h>
                       ^
compilation terminated.

My sessionInfo:

R version 3.5.0 (2018-04-23)
Platform: x86_64-redhat-linux-gnu (64-bit)
Running under: Red Hat Enterprise Linux

Matrix products: default
BLAS/LAPACK: /usr/lib64/R/lib/libRblas.so

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

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

other attached packages:
[1] devtools_1.13.5

loaded via a namespace (and not attached):
 [1] httr_1.3.1     compiler_3.5.0 R6_2.2.2       tools_3.5.0    withr_2.1.2   
 [6] curl_3.2       memoise_1.1.0  knitr_1.20     git2r_0.21.0   digest_0.6.15 
jcheng5 commented 6 years ago

What files if any are in /usr/lib64/R/library/later/include?

kmiddleton commented 6 years ago

Ugh. It was a stray 00LOCK-later hanging around that was causing the issue.