During package installation, I'm frequently receiving the following two errors for various packages:
“gcc: fatal error: cannot execute ‘cc1’: execvp: No such file or directory”
“gcc: fatal error: cannot execute ‘cc1plus’: execvp: No such file or directory”
To resolve this, I'm constantly toggling the CC, CXX, and CXX11 flags for C and C++.
Is there a good solution to this? Is the problem with my Makevars file? Are there too many compiler versions installed on my system? I'd like to make a recommendation to my admins, but maybe there's an easier solution. I see this as preventing the use of R within my organization.
Thank you for taking a look.
Here is my Makevars file showing a few of the packages I've had to toggle installations for:
MAKEFLAGS = -j8
## C++ flags
CXX=g++
#CXX=/usr/bin/g++ # had to use this to get the install for dplyr to work
CXX11=/usr/bin/g++ # had to do this to get the install for pdftools to work
#CXX11=g++
CXX14=g++
CXX17=g++
CXXFLAGS=-O3 -march=native -Wno-ignored-attributes
CXX11FLAGS=-O3 -march=native -Wno-ignored-attributes
CXX14FLAGS=-O3 -march=native -Wno-ignored-attributes
CXX17FLAGS=-O3 -march=native -Wno-ignored-attributes
CXXPICFLAGS=-fPIC
CXX11PICFLAGS=-fPIC
CXX14PICFLAGS=-fPIC
CXX17PICFLAGS=-fPIC
CXX11STD=-std=c++11
CXX14STD=-std=c++14
CXX17STD=-std=c++17
## C flags
#CC=gcc
CC=/usr/bin/gcc # had to do this to get the install for cli to work
#CC=/usr/bin/gcc -std=c99 # had to do this to get the install for rlang to work
CFLAGS=-O3 -march=native
## Fortran flags
FC=gfortran
F77=gfortran
FFLAGS=-O3 -march=native
FCFLAGS=-O3 -march=native
Also, here's the output from sessionInfo(), if relevant:
> sessionInfo()
R version 3.5.3 (2019-03-11)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Red Hat Enterprise Linux
Matrix products: default
BLAS: /opt/R/R-3.5.3/lib64/R/lib/libRblas.so
LAPACK: /opt/R/R-3.5.3/lib64/R/lib/libRlapack.so
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C 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 LC_PAPER=en_US.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices datasets utils methods base
loaded via a namespace (and not attached):
[1] compiler_3.5.3 tools_3.5.3 renv_0.16.0