美文网首页R小白相关
服务器更新R版本/包安装

服务器更新R版本/包安装

作者: 马疾香幽_0702 | 来源:发表于2023-03-13 10:09 被阅读0次

一、服务器更新R版本以及更改Rstudio配置&vscode配置R

版本更新从3.6.0-->4.2.2

方法:

Root权限

[if !supportLists]1. [endif]Configure:

./configure --prefix=/home/software/R-4.2.2 --enable-R-shlib

报错:configure: error: libcurl >= 7.28.0 library and headers are required with support for https

解决:yum install curl curl-devel -y

后续有个pdf字体的warning,未解决,不重要。

[if !supportLists]2. [endif]安装成功后,更改服务器rstudio的attach的R版本:

(1)root用户打开Rstudio server配置文件

 vim /etc/rstudio/rserver.conf

添加两个版本R的路径,想用哪个版本,即把另一个注释掉

rsession-which-r=/home/test/Download/R-4.2.1/bin/R

# rsession-which-r=/usr/local/bin/R

保存退出该文件

(2)root用户重启Rstudio

# rstudio-server verify-installation #查看Rstudio安装是否正确

rstudio-server restart #重启

rstudio-server status #查看状态

(3)重新打卡网页版Rstudio server即可。

————————————————

版权声明:本文为CSDN博主「YZJenny」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/YZJenny/article/details/127364737

(4)服务器上的rstudio-server无法使用conda环境中的R,所以想看一下vscode怎么样

(参考:忘掉Rstudio,来用VSCode愉快地进行R远程开发 (baidu.com)

应该配置成功了,我目前的操作就是先打开一个R文件,之后根据vscode自动弹出的提示安装一些需要的R包。这一步结束之后,需要在Rextension的设置里添加希望打开的conda R路径。

这里的hdWGCNA里的R是我预先配置好的。

(5) rstudio-server链接conda中的R

这里除了常规的which-r配置外,还需要配置lib路径,不然无法正常启动。

在rserver.conf中添加:

rsession-which-r=/root/anaconda3/envs/singlecell_analysis/bin/R

rsession-ld-library-path=/root/anaconda3/envs/singlecell_analysis/lib

即可。

二、本地安装stringi

安装Seurat的时候发现stringi安装失败,因为无法连接github。因此采用线下安装的方法。报错信息:

首先在官网下载stringi的安装包:

stringi_1.7.12.tar.gz

之后下载icu69,这个对于安装也是必须的,下载地址:

https://raw.githubusercontent.com/gagolews/stringi/master/src/icu69/data/icu4c-69_1-data-bin-l.zip

下载完成后存放到/home/software/R_package/文件夹下,之后执行:

R CMD INSTALL --configure-vars='ICUDT_DIR=/home/software/R_package/' stringi_1.7.12.tar.gz

再补充一点,这个本地个性化安装很重要,即使在conda环境下也要自己手动安装stringi,否则lib里面有个文件可能会和其他的包冲突。stringi(libicui18n.so.58)里面的包需要的是58版本,其他的很多都需要更新的。但是手动安装貌似就不存在这个问题了。

三、RcppTOML安装失败

真是各种问题啊,RcppTOML安装也出问题了,报错信息:

C++17 standard requested but CXX17 is not defined

解决方法:

首先按照服务器安装新版本R及Seurat方法所述方法更新gcc至devtoolset-9版本。之后执行:

mkdir -p ~/.R

echo 'CXX17 = g++ -std=c++17 -fPIC' > ~/.R/Makevars

搞定。

四、SCENIC的本地安装

本方法应该同样适用于其他github来源的包。devtools在线安装SCENIC无法连接GitHub,因此采用先打包下载,再本地安装的方法。在github上打包下载zip文件即可。

之后在服务器上选定安装文件夹,解压缩,得到了一个SCENIC-master文件夹。

之后用:install.packages("SCENIC-master", repos=NULL, type="source") 安装即可。

五、hdf5r & seurat-disk安装

hdf5r安装:

服务器自带的hdf5版本比较老,需要手动下载安装hdf5。这里我下载了最新版本:

wget -c Index of /ftp/HDF5/releases/hdf5-1.14/hdf5-1.14.0/src/hdf5-1.14.0.tar.gz

之后手动安装。我用了默认安装路径,没有指定。

hdf5下载解压目录:/home/software/hdf5-1.14.0/

之后依次执行:

./configure

make

make check

make install

完成之后hdf5安装在了当前目录

下面需要安装hdf5r,需要指定路径

首先,在终端中执行:

echo "dyn.load('/home/software/hdf5-1.14.0/hdf5/lib/libhdf5_hl.so.310')" >> ~/.Rprofile

echo LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/home/software/hdf5-1.14.0/hdf5/lib/ >> ~/.Renviron

之后在R中安装hdf5r:

install.packages("hdf5r", configure.args="--with-hdf5=/home/software/hdf5-1.14.0/hdf5/bin/h5cc")

之后安装seurat disk,使用的也是先下载后安装的模式:

install.packages("seurat-disk-master", repos=NULL, type="source")

这里需要注意一下,SeuratDisk安装的时候是在root权限安装的,个人账号登陆的时候两个echo还需要在个人账号重新跑一遍。应该有更好的办法但是还没找到。

如果配置Rprofile和Renviron的时候打开了Rstudio,记得在配置完成后在Rstudio中重启R,不然无法正常使用。

如果后续还是报错,每次使用这两个包之前运行:

dyn.load('/home/software/hdf5-1.14.0/hdf5/lib/libhdf5_hl.so.310')

library(SeuratDisk)

即可。

六、scater安装

有一个包,Cairo需要系统中提前安装。代码:

yum install cairo-devel.x86_64

之后在R中:install.packages("Cairo")

七、conda中的R包安装

1) ragg:

直接用conda里面的R安装ragg会显示configure失败,因此使用以下安装方式:

conda install -c conda-forge r-ragg

(不得不说conda安装起来还真是方便,可以自动检测下载一些依赖。)

后面加载的时候报错:

library(ragg)

错误: package or namespace load failed for ‘ragg’ in dyn.load(file, DLLpath = DLLpath, ...):

无法载入共享目标对象‘/root/anaconda3/envs/singlecell_analysis/lib/R/library/ragg/libs/ragg.so’::

  libjpeg.so.9: 无法打开共享对象文件: 没有那个文件或目录

解决方法是更新jpeg包。我做了 两个操作:

conda install -c conda-forge libjpeg-turbo

conda install -c conda-forge jpeg

之后就可以加载成功了。

相关文章

  • R 和 Rstudio 在线更新

    R 在线更新 最近安装 R 包的时候老是会遇到有些包不适应老版本,无奈还是更新了新的版本。卸载重装就太麻烦了,而且...

  • 为了一个函数更新了R版本。。

    为了一个R包更新了R版本,选择直接从官网上下载新的R包并安装。安装之后,发现之前下载的R包都没有了,所以需要重新下...

  • R语言基础学习1

    1.学会安装R(一般不推荐安装最新版本的R,R包更新速度慢,产生不兼容的情况),再安装 R编译软件Rstudio(...

  • CentOS上由libgfortran.so.4引起的R包igr

    在R发布了3.6.1之后,我在我的CentOS服务器上编译了这个版本的R语言,随后就是开始安装各种R包。在安装cl...

  • R包安装、加载与更新

    掌握了R基本的一些概念,今天咱们来简单了解下R包,R包安装、加载与更新 安装R包的几种方式 从CRAN中安装R包 ...

  • npm常用命令

    升级单个包 检查包更新 查看包版本 更新指定版本 卸载包 查看全局安装的 npm 包

  • 学习小组Day4笔记-阿含-2020-10-08

    学习内容 1.在mac上安装R与Rstudio, windows电脑上更新至最新版本 2.学习果子老师发的R包安装...

  • DiffBind安装(二)

    DiffBind包现在更新了,但是我还是习惯了用旧的版本,由于我的R语言更新到了4.0,默认安装DiffBind的...

  • 2021-10-18不重装升级windows下的R

    1.更新R 打开现有版本的R, 这时会提醒很多,要不要安装最新版,安装路径,装完了要不要把旧的R包拷贝过来等等,一...

  • stringr 安装失败的解决办法

    最近有个任务要在新服务器上安装R包,stringr是其中之一新服务器的R版本是4.0.5,比我之前使用的4.0.2...

网友评论

    本文标题:服务器更新R版本/包安装

    本文链接:https://www.haomeiwen.com/subject/fckcrdtx.html