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
installation error in centos R #1292
Comments
What version of gcc are you using? |
gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44) |
Presumedly this is caused by us using C++11 features not supported by your compiler, but even gcc 4.8.5 should be okay here. @t-kalinowski what do you think? |
See also: #1301 |
How about using devtoolset ? It is meant to be a band-aid of offering less-deprecated compiler to 'by-design' ancient and outdated CentOS/RHEL release that have trouble with current software. |
It did not work.
1: All Enter one or more numbers, or an empty line to skip updates: 3 Installing package into ‘/home/jiemeng.zhang/R/x86_64-pc-linux-gnu-library/4.1’
|
It did not work. How could I fix it? |
It is 2022 and yet we still get burned for using features from a now 10 year old C++ standard. Sigh... |
Well AFAIK devtoolset works for other users bringing a less-dated toolchain to a very dated OS release. Besides saying "it did not work" @jiemengzhang did not convince me got the compiler switched. As I recall (when I had to rely on it) its use is a bit weird -- |
hmm, I tried to reproduce the error in docker (to see how hard the fix would be), but it looks like RcppTOML fails to install before I even get to a reticulate error. Dockerfile:FROM centos:centos7
# EPEL
RUN yum -y update
RUN yum -y install epel-release
RUN yum -y group install "Development tools"
RUN yum -y install sudo wget git tar python3-devel gcc glibc-devel curl
RUN yum-builddep -y python3
RUN yum-builddep -y R
RUN yum -y install R python3
RUN Rscript \
-e 'p <- unlist(strsplit(Sys.getenv("R_LIBS_SITE"), ":"))' \
-e 'lapply(p[!dir.exists(p)], dir.create, recursive = TRUE)'
RUN Rscript -e 'install.packages("remotes", repos = list(repos = c(CRAN = "https://cran.rstudio.com")))'
ADD . reticulate
WORKDIR reticulate
RUN Rscript -e 'remotes::install_local(dependencies = TRUE)' Relevant Output:
|
On a call right now so cannot dig but RcppTOML is reasonably 'old' and 'stale' (in the sense that I need to switch the C++ library I use to another one). It has built the same way for years and should not require anything more than C++11. Edit: Glancing at the Dockerfile you are not using devtools, right? That would leave you on an ancient toolchain. Edit 2: It clearly shows gcc 4.8.2. That has been 'too old' for a maybe up to a decade. gcc/g++ 4.9.2 (as was used on Windows cycles ago) is the known minimum. These days gcc/g++ 8.* is AFAIK a more realistic minimum. |
@jiemengzhang or @MengyuanLyu How did you install reticulate and RcppTOML previously? |
I solved the problem @MengyuanLyu
Then just install it in your R environment |
Hello,
I try to install Seurat package in R at centos. However, it indicates there are some errors in the Reticulate installation. Here is the detailed information:
python.cpp:3111:36 :error: call of overloaded 'Vector()' is ambiguous
return CharacterVector({id.str()});
Python.cpp.3111.36: note: candidates are:
In file included from /root/R/x86_64-pc-linux-gnu-library/4.1/Rcpp/include/Rcpp/Vector.h:52:0,
from /root/R/x86_64-pc-linux-gnu-library/4.1/Rcpp/include/Rcpp.h:40,
from python.cpp:7:
/root/R/x86_64-pc-linux-gnu-library/4.1/Rcpp/include/Rcpp/vector/Vector.h:102:5: note: Rcpp::Vector<RTYPE, StoragePolicy>::Vector(Const string&) [with int RTYPE = 16; StoragePolicy = Rcpp::PreserveStorage; std::string = std::basic _string]
Vector( Const std::string& st) {
^
/root/R/x86_64-pc-linux-gnu-library/4.1/Rcpp/include/Rcpp/vector/Vector.h:64:5: note: Rcpp::Vector<RTYPE, StoragePolicy>::Vector(Const Rcpp::Vector<RTYPE, StoragePolicy>&) [with int RTYPE = 16; StoragePolicy = Rcpp::PreserveStorage]
Vector( Const Vector& other) {
^
make: ***[python.o] Error 1
ERROR: compilation failed for package 'reticulate'
Hope for your reply.
Thank you very much
The text was updated successfully, but these errors were encountered: