Signac

2020-11-18  本文已影响0人  闹钟又响了

在windosw下安装signac包的时候,一直报错如下。

make: *** [C:/PROGRA~1/R/R-36~1.3/etc/x64/Makeconf:215: split.o] Error 1

ERROR: compilation failed for package 'Signac'

搜索之后都是因为Rtools没安装好,但重新安了之后依旧是报错。无意中把Rtools卸载了,居然安装成功了,惊喜。


在linux下R3.6.3安装signac包的时候,报错类似/usr/include/c++/4.8.2/ext/new_allocator.h:120:4: error: use of deleted function 'std::basic_ofstream<char>::basic_ofstream(const std::basic_ofstream<char>&)'

查原因就是gcc版本太低,可是我已经把临时路径export到了最新的版本(export LD_LIBRARY_PATH=/home/myname/software/gcc-9.1.0/gcc_compile/lib64),但仍然报错,而且已经在/home/myname/.R/Makevars中更改了CC和CXX,这个原因是由于安装了两个版本的R(3.6.2和3.6.3),这个Makevars文件链接到的是之前安的版本3.6.2,所以对于3.6.3没用。于是重新查找,发现/home/myname/software/R-3.6.3/etc/Makeconf里的默认gcc是系统默认的,而在home/myname/software/R-3.6.2/etc/Makeconf已经做出了更改。因此在按照/home/myname/software/R-3.6.2/etc/Makeconf中的内容来更改/home/myname/software/R-3.6.3/etc/Makeconf(可以先保存一份)。

cd /home/myname/software/R-3.6.3/etc

cat Makeconf > Makeconf1

vim Makeconf

:set number

#更改过程

:wq

再进行安装signac包,成功。

上一篇下一篇

猜你喜欢

热点阅读