在Ubuntu 20.10树莓派4上安装R 4.0.3遇阻,求替代方案
嘿,我之前在ARM架构的设备上也遇到过类似的R版本适配问题,给你几个实用的替代方案,帮你搞定Ubuntu 20.10树莓派4上的R 4.0.3安装:
可行替代方案
方案一:从源码编译安装R 4.0.3
这是ARM平台获取特定R版本最可靠的方式,官方包没适配的时候,源码编译能精准拿到你需要的版本:
- 先安装编译依赖:
这个命令会自动安装所有编译R所需的系统依赖,省得你一个个找。sudo apt build-dep r-base - 下载R 4.0.3的源码包:
去CRAN的源码归档页面找到R 4.0.3的tar.gz包,或者直接用命令下载:wget https://cran.r-project.org/src/base/R-4/R-4.0.3.tar.gz - 解压并进入源码目录:
tar -xzf R-4.0.3.tar.gz cd R-4.0.3 - 配置编译参数:
./configure --prefix=/usr/local--prefix=/usr/local会把R安装到系统的本地目录,不会和系统自带的R包冲突,后续调用时优先级更高。 - 编译并安装:
树莓派4有4核,用-j4加速编译:make -j4 sudo make install - 验证安装:
输出应该显示R version 4.0.3。R --version
方案二:用conda-forge的ARM64预编译包
conda现在已经支持ARM64架构,conda-forge仓库里有现成的R 4.0.3预编译包,不用自己编译:
- 先安装Mambaforge(推荐,比Miniconda更快)的ARM64版本,它会自动配置conda-forge仓库。
- 创建并激活专门的R 4.0.3环境:
conda create -n r403 r=4.0.3 conda activate r403 - 验证版本:
这个方案的好处是环境隔离,不会影响系统自带的R,后续升级或切换版本也很方便。R --version
方案三:暂时使用系统R 4.0.2,搭配devtools安装高版本包
如果不是必须要R 4.0.3本身,只是需要某些依赖高版本R的包功能,可以先用系统仓库的R 4.0.2应急:
- 安装系统自带的R:
sudo apt install r-base r-recommended - 安装devtools工具:
先装系统依赖,再在R里安装devtools:
打开R终端,执行:sudo apt install r-cran-devtoolsinstall.packages("devtools") - 从GitHub安装需要的高版本包:
很多包的GitHub仓库会提供兼容旧版R的分支或版本,用devtools直接安装:
如果遇到版本兼容问题,可以指定具体的commit或tag:devtools::install_github("username/package_name")devtools::install_github("username/package_name@v1.2.3")
注意事项
- 源码编译时树莓派会占用较多资源,建议插好电源,避免中途断电。
- 使用conda环境时,每次使用R都需要先激活对应的环境(
conda activate r403),或者把激活命令加到~/.bashrc里自动激活。 - 源码编译的R会放在
/usr/local/bin,如果系统自带的R路径优先级更高,可以修改~/.bashrc,添加export PATH=/usr/local/bin:$PATH。
内容的提问来源于stack exchange,提问作者Aren Cambre
相关产品推荐
相关产品推荐

