实验环境:Rocky linux 9.2
R版本:4.3.2
方法一:修改R,添加conda环境路径
sudo vim /opt/R/4.3.2/lib64/R/etc/ldpaths
-----------
: ${JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.22.0.7-2.el9.x86_64}
: ${R_JAVA_LD_LIBRARY_PATH=${JAVA_HOME}/lib/server}
if test -n "/usr/local/lib64"; then
: ${R_LD_LIBRARY_PATH=${R_HOME}/lib:/usr/local/lib64:/data/anaconda3/envs/public/lib}
else
: ${R_LD_LIBRARY_PATH=${R_HOME}/lib:/s1/Program/anaconda3/envs/public/lib}
fi
if test -n "${R_JAVA_LD_LIBRARY_PATH}"; then
R_LD_LIBRARY_PATH="${R_LD_LIBRARY_PATH}:${R_JAVA_LD_LIBRARY_PATH}"
fi
if test -z "${LD_LIBRARY_PATH}"; then
LD_LIBRARY_PATH="${R_LD_LIBRARY_PATH}"
else
LD_LIBRARY_PATH="${R_LD_LIBRARY_PATH}:${LD_LIBRARY_PATH}"
fi
export LD_LIBRARY_PATH
--------------
其中/data/anaconda3/envs/public/lib中安装了 R4.3.2,并预装了许多需要使用的库。
方法二:使用默认R自动library,然后在Rstudio-Server导入libPaths。再将/home/Your_name/R/x86_64-pc-linux-gnu-library/4.3切换为默认路径,这样安装的库就在自己的家目录下,不影响其他人的使用。
getwd()
setwd('想要的工作目录')
.libPaths()
library(Seurat)# Error
.libPaths(c('/data/anaconda3/envs/public/lib/R/library',.libPaths()))
.libPaths()
library(Seurat)
Sys.getenv("R_HOME")
Sys.getenv("LD_LIBRARY_PATH")
#install.packages("package_name",
#lib="/home/Your_name/R/x86_64-pc-linux-gnu-library/4.3")
current_paths <- .libPaths()
new_paths <- current_paths
# 将第三个路径移到第一位
new_paths[1] <- current_paths[2]
new_paths[2] <- current_paths[1]
.libPaths(new_paths)
.libPaths()
方法三:找到其他位置的GLIBC_库,做一个软连接
[anaconda3]$ strings /data/anaconda3/lib64/libc.so.6 |grep GLIBC_2.3| head
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.30
GLIBC_2.31
GLIBC_2.32
GLIBC_2.33
GLIBC_2.34
__GLIBC_2_3_3_sys_siglis
[anaconda3]$ ln -s /data/anaconda3/lib64/libc.so.6 你环境的lib/libc.so.6