make 错误,gcc:“make[4]:gcc:权限被拒绝”(Arch Linux)

cma*_*so6 1 linux gcc makefile r archlinux

make在尝试编译一些包时遇到了一个相当奇怪的错误。我正在运行 Arch Linux 5.6.7

例如,当尝试编译 R 3.6 时,我收到以下错误(完整输出在最后):

gcc -shared -fopenmp -L/usr/local/lib64 -o libRblas.so blas.o  cmplxblas.o -lgfortran -lm -lquadmath
make[4]: gcc: Permission denied
Run Code Online (Sandbox Code Playgroud)

然而,gcc它是最新的,适用于其他安装,并且一切似乎都已正确配置:

[cmasso6@cmasso6 R-3.6.3]$ gcc --version
gcc (Arch Linux 9.3.0-1) 9.3.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

[cmasso6@cmasso6 R-3.6.3]$ which gcc
/usr/bin/gcc
Run Code Online (Sandbox Code Playgroud)

我查看了包的MakeconfCC=gcc文件,其中包含以下行: 。改变它以CC=/usr/bin/gcc使其发挥作用。

这是我的$PATH

/usr/lib/aurutils:/usr/lib:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl
Run Code Online (Sandbox Code Playgroud)

再次,gcc从命令行正确运行。我不知道发生了什么事。

需要明确的是,我通过更改Makeconf文件来完成此安装,并且我还可以pacman毫无问题地安装 R 4.0。但是,当我尝试安装一些 R 软件包(例如ps. gcc所以我想and/or存在一个普遍问题make

我不知道该怎么办,任何帮助将不胜感激!

错误的完整输出make

[cmasso6@cmasso6 R-3.6.3]$ make
make[1]: Entering directory '/home/cmasso6/Downloads/R-3.6.3/m4'
make[1]: Nothing to be done for 'R'.
make[1]: Leaving directory '/home/cmasso6/Downloads/R-3.6.3/m4'
make[1]: Entering directory '/home/cmasso6/Downloads/R-3.6.3/tools'
make[1]: Nothing to be done for 'R'.
make[1]: Leaving directory '/home/cmasso6/Downloads/R-3.6.3/tools'
make[1]: Entering directory '/home/cmasso6/Downloads/R-3.6.3/doc'
make[2]: Entering directory '/home/cmasso6/Downloads/R-3.6.3/doc/html'
make[2]: Leaving directory '/home/cmasso6/Downloads/R-3.6.3/doc/html'
make[2]: Entering directory '/home/cmasso6/Downloads/R-3.6.3/doc/manual'
make[2]: Nothing to be done for 'R'.
make[2]: Leaving directory '/home/cmasso6/Downloads/R-3.6.3/doc/manual'
make[1]: Leaving directory '/home/cmasso6/Downloads/R-3.6.3/doc'
make[1]: Entering directory '/home/cmasso6/Downloads/R-3.6.3/etc'
make[1]: Leaving directory '/home/cmasso6/Downloads/R-3.6.3/etc'
make[1]: Entering directory '/home/cmasso6/Downloads/R-3.6.3/share'
make[1]: Leaving directory '/home/cmasso6/Downloads/R-3.6.3/share'
make[1]: Entering directory '/home/cmasso6/Downloads/R-3.6.3/src'
make[2]: Entering directory '/home/cmasso6/Downloads/R-3.6.3/src/scripts'
creating src/scripts/R.fe
make[3]: Entering directory '/home/cmasso6/Downloads/R-3.6.3/src/scripts'
make[3]: Leaving directory '/home/cmasso6/Downloads/R-3.6.3/src/scripts'
make[2]: Leaving directory '/home/cmasso6/Downloads/R-3.6.3/src/scripts'
make[2]: Entering directory '/home/cmasso6/Downloads/R-3.6.3/src/include'
config.status: creating src/include/config.h
config.status: src/include/config.h is unchanged
make[3]: Entering directory '/home/cmasso6/Downloads/R-3.6.3/src/include/R_ext'
make[3]: Leaving directory '/home/cmasso6/Downloads/R-3.6.3/src/include/R_ext'
make[2]: Leaving directory '/home/cmasso6/Downloads/R-3.6.3/src/include'
make[2]: Entering directory '/home/cmasso6/Downloads/R-3.6.3/src/extra'
make[3]: Entering directory '/home/cmasso6/Downloads/R-3.6.3/src/extra/blas'
make[4]: Entering directory '/home/cmasso6/Downloads/R-3.6.3/src/extra/blas'
gfortran -fno-optimize-sibling-calls -fpic  -g -O2  -c blas.f -o blas.o
gfortran -fno-optimize-sibling-calls -fpic  -g -O2  -c cmplxblas.f -o cmplxblas.o
gcc -shared -fopenmp -L/usr/local/lib64 -o libRblas.so blas.o  cmplxblas.o -lgfortran -lm -lquadmath
make[4]: gcc: Permission denied
make[4]: *** [Makefile:37: libRblas.so] Error 127
make[4]: Leaving directory '/home/cmasso6/Downloads/R-3.6.3/src/extra/blas'
make[3]: *** [Makefile:32: R] Error 2
make[3]: Leaving directory '/home/cmasso6/Downloads/R-3.6.3/src/extra/blas'
make[2]: *** [Makefile:35: make.blas] Error 2
make[2]: Leaving directory '/home/cmasso6/Downloads/R-3.6.3/src/extra'
make[1]: *** [Makefile:28: R] Error 1
make[1]: Leaving directory '/home/cmasso6/Downloads/R-3.6.3/src'
make: *** [Makefile:61: R] Error 1
Run Code Online (Sandbox Code Playgroud)

Mad*_*ist 5

gcc您的 目录之一中的某处有一个名为PATH包含gcc二进制文件的目录之前的目录。

这是 GNU gnulib 库中模块中的一个错误,GNU make 使用该模块来定位 PATH 上的内容。请参阅https://savannah.gnu.org/bugs/?57962