Problems installing dplyr on Centos 8

263 views
Skip to first unread message

T G

unread,
May 4, 2020, 3:18:45 PM5/4/20
to manipulatr
I'm on Centos 8, dictated by corporate IT. I have EPEL 8 added to the repositories, and I've installed R. I'm trying to install the popular CRAN package, dplyr, so I can use its functions in R. I've used it a pile of times on different environments, including Centos 7.

> install.packages("dplyr")
Installing package into ‘/home/user/R/x86_64-redhat-linux-gnu-library/3.6’
(as ‘lib’ is unspecified)
 
Then it goes and downloads the package and goes through a lot of compile steps. Skipping to the last part of the compiling,

g++ -m64 -std=gnu++11 -shared -L/usr/lib64/R/lib -Wl,-z,relro -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -o dplyr.so RcppExports.o address.o api.o arrange.o between.o bind.o distinct.o encoding.o filter.o group_indices.o hybrid.o init.o join.o join_exports.o mutate.o rlang-export.o rlang.o select.o set.o summarise.o test.o utils-bindings.o utils.o window.o -L/usr/lib64/R/lib -lR
installing to /home/user/R/x86_64-redhat-linux-gnu-library/3.6/00LOCK-dplyr/00new/dplyr/libs
** R
** data
*** moving datasets to lazyload DB
** inst
** byte-compile and prepare package for lazy loading
Error in dyn.load(file, DLLpath = DLLpath, ...) :
  unable to load shared object '/home/user/R/x86_64-redhat-linux-gnu-library/3.6/Rcpp/libs/Rcpp.so':
  /lib64/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /home/user/R/x86_64-redhat-linux-gnu-library/3.6/Rcpp/libs/Rcpp.so)
Calls: <Anonymous> ... asNamespace -> loadNamespace -> library.dynam -> dyn.load
Execution halted
ERROR: lazy loading failed for package ‘dplyr’
* removing ‘/home/user/R/x86_64-redhat-linux-gnu-library/3.6/dplyr’

So, I'm clearly unable to find GLIBCXX_3.4.26 and that's a problem. I'm unclear on a few things, including which of my packages requires it (does dplyr require it, or is it innocently calling a library which requires it). I know that I'm not gong to get GLIBCXX_3.4.26 in Centos 8. But now I need to understand if I need to find an installer for R that needs an earlier version (which I might find in EPEL 7? would that even work on Centos 8?) or if I need to find an earlier version of dplyr (which I might find in archives of CRAN?)

My R version that yum list installed reports is 3.6.3-1.el8. My stdc++ is 8.3.1-4.5.el8.

Thanks for any help.

Ista Zahn

unread,
May 4, 2020, 3:32:30 PM5/4/20
to T G, manipulatr
Hi T G

The general idea is that when system libraries change R packages that
depend on those system libraries need to be rebuilt. Right now R is
telling you that the Rcpp package can't find the system c++ library,
suggesting that you should rebuild Rcpp. That is, try

install.packages("Rcpp")
install.packages("dplyr")

If you get errors related to system libraries rinse and repeat.

Best,
Ista
> --
> You received this message because you are subscribed to the Google Groups "manipulatr" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to manipulatr+...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/manipulatr/522032a7-9a78-4713-a57a-088720831d63%40googlegroups.com.

T G

unread,
May 4, 2020, 3:49:31 PM5/4/20
to manipulatr
Thank you very much! That did the trick.
> To unsubscribe from this group and stop receiving emails from it, send an email to manip...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages