R 4.2.0如何安装packages?devtools相关代码报错解决方案
R 4.2.0版本安装devtools及omd包的可行方案
前置系统依赖安装
装包前先配齐系统层编译依赖,否则devtools安装阶段就会抛出编译错误:
- Windows用户:安装匹配R4.2.0版本的Rtools42,安装时必须勾选「Add Rtools to system PATH」选项,装完重启电脑再启动R。
- macOS用户:终端执行
xcode-select --install安装Xcode命令行工具,再安装R4.2.0对应版本的gfortran依赖库。 - Debian/Ubuntu系Linux用户:终端执行
sudo apt install libcurl4-openssl-dev libssl-dev libxml2-dev libfontconfig1-dev libharfbuzz-dev libfribidi-dev安装全套编译依赖。
devtools包安装校验
启动一个无其他第三方包加载的干净R会话,依次执行以下代码:
# 将已安装包更新到适配R4.2.0的版本,解决跨大版本的包兼容问题 update.packages(ask = FALSE, checkBuilt = TRUE) # 安装devtools及全量依赖 install.packages("devtools", dependencies = TRUE) # 加载校验,加载过程无报错再进行后续操作 library(devtools)
如果加载devtools时提示某依赖包版本不匹配,单独执行install.packages("提示的包名")重装对应包即可。
omd包安装报错适配
原install_github命令在R4.2.0环境下常见三类报错,对应处理方式如下:
- 报错提示GitHub连接超时、资源下载失败:先执行以下代码设置下载方法和国内CRAN镜像,再运行安装命令
options(download.file.method = "libcurl") options(repos = c(CRAN="https://mirrors.tuna.tsinghua.edu.cn/CRAN/"))
- 报错提示子目录识别错误、包结构异常:R4.2.0适配的devtools版本对subdir参数识别逻辑有差异,替换原安装命令为以下版本,同时关闭自动升级依赖,避免装到不兼容R4.2.0的高版本包
install_github( repo = "sangwon-hyun/omd", subdir = "omd", dependencies = TRUE, upgrade = "never" )
- 报错提示源码编译失败、依赖包版本不兼容:定位报错信息里提到的不兼容依赖包,下载该包2022年(R4.2.0正式发布的年份)发布的源码存档包,执行本地安装即可,命令格式为
install.packages("本地源码包存放路径", repos = NULL, type = "source")。
安装过程中如果弹出是否从源码编译包的提示,直接选择“是”即可,不要选择高版本预编译二进制包,否则会触发版本不匹配问题。
内容的提问来源于stack exchange,提问作者oliver
相关产品推荐
相关产品推荐

