R cran无法从devtools的install_github递归安装依赖项

时间:2016-08-23 14:14:57

标签: r github install devtools

我尝试使用Windows 7测试在Ubuntu 16.04上开发的软件包。对于这两个平台,我都使用R 3.3.1(但我也在3.3.0上测试)。

我的包保存在我的GitHub仓库(https://github.com/charlottesirot/elementR)上。当我从Ubuntu运行此命令时,没有问题发生:

    library(devtools)
    install_github("charlottesirot/elementR", dependencies = T , force = T)

但是对于Windows 7,我有以下答案:

  

从URL下载GitHub repo charlottesirot / elementR @ master   https://api.github.com/repos/charlottesirot/elementR/zipball/master   安装elementR“C:/PROGRA〜1 / R / R-33〜1.1 / bin / i386 / R” - 无站点文件   --no-environ --no-save --no-restore --quiet CMD \ INSTALL \“C:/ Users / Cha / AppData / Local / Temp / RtmpUX1GVA / devtoolsa907a336b / charlottesirot-elementR-103e064”   \ --library =“C:/Users/Cha/Documents/R/win-library/3.3”   --install-tests

     
      
  • 安装包'elementR'...   ** R.   ** inst   **为延迟加载准备包loadNamespace中的错误(i,c(lib.loc,.libPaths()),versionCheck = vI [[i]]):没有   名为'XML'的包错误:包'elementR'
  • 的延迟加载失败   
  • 删除'C:/Users/Cha/Documents/R/win-library/3.3/elementR'错误:命令失败(1)
  •   

据我所知,R尝试安装我的软件包的依赖项(例如Shiny ...),但它无法安装依赖项的依赖项(例如来自gnumeric软件包的XML)

因此,我尝试手动安装XML思维,可能存在XML问题,然后:

  
      
  • 安装包'elementR'...   ** R.   ** inst   **为延迟加载准备包loadNamespace中的错误(j< - i [[1L]],c(lib.loc,.libPaths()),versionCheck = vI [[j]]):那里   没有名为'gtools'的包错误:包的延迟加载失败   'elementR'
  •   
  • 删除'C:/Users/Cha/Documents/R/win-library/3.3/elementR'
  •   

我无法手动安装所有软件包,这没有意义!!!

此外,当我尝试一些比我的包装更不含糊的东西时,我认为我的代码可能会出错:

install_github("hadley/ggplot2", force = T)
  • 安装包'ggplot2'... ** R. **数据 ***将数据集移动到lazyload DB ** inst **测试 **为延迟加载准备包loadNamespace中的错误(i,c(lib.loc,.libPaths()),versionCheck = vI [[i]]):没有名为'assertthat'的包错误:包的延迟加载失败'GGPLOT2'
  • 删除'C:/Users/Cha/Documents/R/win-library/3.3/ggplot2'
  • 恢复上一个'C:/Users/Cha/Documents/R/win-library/3.3/ggplot2'错误:命令失败(1 )

我认为install_github存在问题??? 你觉得怎么样?

这是我的命名空间:

exportPattern("^[[:alpha:]]+")

importFrom(R6, R6Class)
importFrom(shinyjs, colourInput)
importFrom(shinyjs, delay)
importFrom(shinyjs, useShinyjs)
importFrom(gnumeric, read.gnumeric.sheet)
importFrom(abind, abind)
importFrom(tcltk2, tk2text)
importFrom(gdata, read.xls)
importFrom("readODS", read.ods)
importFrom("grDevices", "bmp", "colorRampPalette", "dev.off", "jpeg",
             "png", "rainbow", "tiff")
importFrom("graphics", "abline", "layout", "legend", "mtext", "par",
             "plot", "points", "rect", "text", "title")
importFrom("stats", "sd")
importFrom("utils", "read.table", "write.csv", "write.table")

import(shinydashboard, shiny, stringr, lmtest, reader, devtools, tcltk)

对我来说,它看起来不错,但你怎么看?

我在互联网上查看了很多文章,但我只发现了一条与我的情况完全相同的信息,但信息不足: Cannot install "flexdashboard package"

我完全陷入困境,我想就此问题寻求帮助。

提前多谢你!

CHA

1 个答案:

答案 0 :(得分:2)

最近,我遇到了类似或相关的问题。事实证明,devtools install_github中存在一个错误,错过了正确的依赖安装,尽管dependecies=TRUE。看看:Does install_github recursively install dependencies?如果问题仍然存在,最好通过他们的github存储库直接联系作者。

另外,我刚刚观察到Windows更新后出现的另一个问题,在此期间,权限似乎已被更改为将包下载或更新到个人Win用户库而不是“默认”R库文件夹。我怀疑devtools似乎因为加载了哪个软件包或者哪个版本可用而丢失了。一个新的R重新安装(即库文件夹清理)解决了这个问题,但这可能并不总是方便。