【问题标题】:Error when installing an R package from github: Could not find build tools necessary to build data.table从 github 安装 R 包时出错:找不到构建 data.table 所需的构建工具
【发布时间】:2016-10-13 01:58:51
【问题描述】:

在 RStudio 中,我尝试在these instructions 之后从 github 安装 data.table 包,并且该包似乎可以毫无问题地下载:

> library(devtools)
> dev_mode(on=T)
Dev mode: ON
d> install_github("Rdatatable/data.table")
Downloading GitHub repo Rdatatable/data.table@master
from URL https://api.github.com/repos/Rdatatable/data.table/zipball/master

然后我收到以下提示:

从源代码构建 R 包需要安装额外的 构建工具。您想现在安装其他工具吗?

选择“是”会导致此错误消息:

Error: Could not find build tools necessary to build data.table

认为这可能是 RStudio 的问题,我尝试在标准 R 控制台中安装该软件包,但这也导致了错误:

Downloading GitHub repo Rdatatable/data.table@master
from URL https://api.github.com/repos/Rdatatable/data.table/zipball/master
Installing data.table
"C:/PROGRA~1/R/R-33~1.0/bin/x64/R" --no-site-file --no-environ --no-save  \
  --no-restore --quiet CMD INSTALL  \
  "C:/Users/Robert/AppData/Local/Temp/RtmpOOKOKu/devtools246832c52ab/Rdatatable-data.table-4348ff4"  \
  --library="C:/Users/Robert/Documents/R-dev" --install-tests 

* installing *source* package 'data.table' ...
** libs
c:/Rtools/mingw_64/bin/gcc  -I"C:/PROGRA~1/R/R-33~1.0/include" -DNDEBUG     -I"d:/Compiler/gcc-4.9.3/local330/include"  -fopenmp   -O2 -Wall  -std=gnu99 -mtune=core2 -c assign.c -o assign.o
c:/Rtools/mingw_64/bin/gcc: not found
make: *** [assign.o] Error 127
Warning: running command 'make -f "Makevars" -f "C:/PROGRA~1/R/R-33~1.0/etc/x64/Makeconf" -f "C:/PROGRA~1/R/R-33~1.0/share/make/winshlib.mk" SHLIB="data.table.dll" WIN=64 TCLBIN=64 OBJECTS="assign.o bmerge.o chmatch.o dogroups.o fastmean.o fcast.o fmelt.o forder.o frank.o fread.o fwrite.o gsumm.o ijoin.o init.o openmp-utils.o quickselect.o rbindlist.o reorder.o shift.o subset.o transpose.o uniqlist.o vecseq.o wrappers.o"' had status 2
ERROR: compilation failed for package 'data.table'
* removing 'C:/Users/Robert/Documents/R-dev/data.table'
Error: Command failed (1)
d>

我在 SO 上找到了三个相关的帖子:

Error: Could not find build tools necessary to build dplyr

Error : Could not find build tools necessary to build

Could not find build tools necessary . Facing error with devtools

前两个似乎特定于 Apple OS,第三个表明特定于 devtools 的错误,但我不知道这是否是我看到的错误的根源。

任何帮助将不胜感激。我在 Windows 10 中运行 R 版本 3.3.0。

【问题讨论】:

  • @Procrastinatus 感谢您的链接。当我执行这些说明中描述的 install.packages 命令时,R 报告“安装包‘data.table’具有非零退出状态”。由于时间关系,我暂时跳过这个,直接使用 data.frame 代替 data.table。
  • 为什么不用CRAN version 而不是开发版?
  • 因为我的代码受到开发版本中修复的错误的影响。
  • 很清楚为什么会发生错误:您没有安装此软件包。尝试安装 RTools(参见第一条评论中的链接)

标签: r devtools


【解决方案1】:

你可以试试:

options(buildtools.check = function(action) TRUE )

包含在https://support.rstudio.com/hc/en-us/community/posts/212725628-Bug-report-with-devtools-install-github-in-RStudio-v0-99-1273-Preview-and-previously-with-Version-0-99-896

...应该禁止 RStudio 尝试验证您的构建工具。

它对我有用。

【讨论】:

  • 这应该是公认的答案,经过太长时间的搜索,它对我有用!
【解决方案2】:

在Windows下工作时需要安装Rtools。下载并选择正确的版本至关重要。运行

R.version

获取您的 R 版本。

安装后,您可能需要重新启动 R。

【讨论】:

  • 我继续为我的正确版本安装 Rtools,重新启动 R,然后尝试再次安装 github(尝试插入符号)并得到相同的错误。
  • 请注意,Rtools 不是包,所以 install.packages("Rtools") 不起作用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-09-20
  • 2016-12-08
  • 2022-01-05
  • 1970-01-01
  • 2019-02-27
  • 2020-09-24
  • 1970-01-01
相关资源
最近更新 更多