R 3.5(beta版)无法安装data.table包,寻求解决方法
解决R 3.5 Beta版本安装data.table失败的问题
嘿,我之前用R开发版的时候也碰到过一模一样的情况,给你梳理下问题原因和解决办法:
你的核心问题是R 3.5属于beta测试版,CRAN暂时还没为这个版本构建好Windows平台的预编译二进制包,所以系统只能尝试从源码安装,但Windows默认没有C/C++编译环境,才会出现安装卡住的提示。下面是几个可行的解决方案:
方法一:切换到R稳定版(最省心)
如果项目对R 3.5 beta的特性没有硬性要求,建议暂时降级到当时的稳定版(比如R 3.4.x系列)。稳定版的CRAN包都有现成的预编译二进制文件,直接运行install.packages("data.table")就能顺利安装,完全不用折腾编译环境。
方法二:配置Windows编译环境(继续用R 3.5 beta)
要是必须用R 3.5 beta,那得先搭好编译环境:
- 下载适配R 3.5的Rtools35(注意版本必须严格对应,不同R版本需要不同的Rtools)
- 安装时一定要勾选「Add Rtools to system PATH」选项,如果漏选了,安装后得手动把Rtools的
bin和mingw_64/bin路径添加到系统环境变量里 - 重启R,然后执行命令:
这样R就会调用Rtools编译data.table的源码完成安装。install.packages("data.table", type = "source")
方法三:安装data.table的GitHub开发版
有时候CRAN上的包版本更新慢,但GitHub的开发版已经适配了新R版本,你可以试试这个路径:
- 先安装devtools包(它的二进制包通常会更早适配新R版本,一般能正常安装):
install.packages("devtools") - 接着从GitHub安装最新版的data.table:
devtools::install_github("Rdatatable/data.table")
额外提醒
- Rtools版本必须和你的R 3.5 beta匹配,版本不兼容会直接导致编译失败
- 如果编译时出现依赖错误,先手动安装data.table需要的依赖包(比如
curl、openssl)的二进制版本,再重新尝试编译。
内容的提问来源于stack exchange,提问作者Rishabh Raj
相关产品推荐
相关产品推荐

