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
但是,它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
我查看了该软件包的Makeconf文件,其中包含以下行:CC=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
再次,gcc
从命令行正确运行。我不知道怎么回事。
明确地说,我通过更改Makeconf文件使此安装起作用,并且我也可以毫无问题地安装R 4.0 pacman
。但是,尝试安装某些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
gcc
在PATH
包含gcc
二进制文件的目录之前,您的目录之一中的某处有一个目录。
这是GNU gnulib库中一个模块中的错误,GNU make使用该错误来定位PATH上的内容。参见https://savannah.gnu.org/bugs/?57962
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句