Linux下无root权限安装R语言(conda安装和普通安装)

如果没有root权限/sudo权限,个人建议用conda安装,如果基础环境出现缺失的包,可以方便的补全,后期conda命令安装R包也方便。

附:conda安装

如果有conda环境,几行命令行解决。如果是小白参考该文

# 创建名字为renv的conda虚拟环境(名字随意起)
conda create -n renv

# 激活环境
conda activate renv

# 安装(以R 4.1.3 版本为例,安装其他版本更换4.1.3即可)
conda install -c conda-forge r-base=4.1.3

普通安装方式如下:

1.下载安装R

# /home/wangwz/packages/R/R-4.3.1下载安装R4.3.1
wget http://mirrors.ustc.edu.cn/CRAN/src/base/R-4/R-4.3.1.tar.gz

tar -zxvf  R-4.3.1.tar.gz

cd R-4.3.1
# 注1:R-4.0 以上在 configure 时,需要增加一个 --with-pcre1 参数。
# 注2:如果想要在其他语言中集成 R 就必须选择--enable-R-shlib选项,将 R 编译成 lib 模式(建议打开!)
./configure --with-readline=no --with-x=no --with-pcre1  --enable-R-shlib --enable-BLAS-shlib --with-blas --with-lapack --prefix=/home/wangwz/packages/R/R-4.3.1


 
make

make install

注:

  1. 关于 R 相关的动态库(--enable-R-shlib选项):
  • R 编译的过程中,如果想要在其他语言中集成 R 就必须选择--enable-R-shlib选项,将 R 编译成 lib 模式,在此模式下,会生成 path-to-R/lib/libR.so库——将 R 编译成动态库(libR.so),然后 R 的执行程序与之链接;
  • 例如,如果不编译生成 libR.so,在安装 rpy2(Python 中的 R 语言接口模块) 时就无法正确编译,还可能报错 loading shared libraries: libR.so: site:stackoverflow.com
  • 同时,确保同目录下 libRblas.so,libRlapack.so 两个链接库也被正确生成,这两个库默认会生成,如果没有,需要添加参数:--enable-BLAS-shlib --with-blas --with-lapack
  1. 安装其他低版本的R语言时,可能会遇到:error: libcurl >= 7.28.0 library and headers are required with support for https。
  • 如果不必构建该版本,那么最简单的解决方案就是切换到 4.3.0 或更高版本(理想情况下是 4.3.1,即当前版本);4.3.0 及更高版本支持使用libcurl8 进行构建。
  • 如果必须构建该版本:解决方法

如果安装过程中出现问题,可以参考该文章

2. 配置环境

在 linux中设置环境变量一般使用bash_profile进行配置,环境变量分为两种:

  1. /etc/bash_profile 表示系统整体设置 ,生效后系统内所有用户可用。(需要root权限)
  2. ~/.bash_profile 只表示当前用户的个人设置,生效后只该用户可用。

这里只介绍配置个人环境,方法如下:

vi .bash_profile 

# 按"i"可编辑,“ESC”键停止编辑,":wq"退出
export PATH="$PATH:/home/wangwz/packages/R/R-4.3.1/bin"

source .bash_profile

3. 命令

# 查看R版本
R --version

# 查看R包路径(进入R环境)
> .libPaths()

4.安装R工具包

# tidyverse镜像安装
install.packages ("tidyverse",repos="https://mirrors.tuna.tsinghua.edu.cn/CRAN/")

# git安装
devtools::install_github('chris-mcginnis-ucsf/DoubletFinder') 
posted @ 2024-07-05 16:51  kingwzun  阅读(440)  评论(0编辑  收藏  举报