R 3.0.1包构建警告

时间:2013-05-29 14:48:36

标签: r rstudio

我正在Windows机器上使用Rtools30和与RStudio相关联的“Build”工具在R 3.0.1中构建R软件包,我认为这与devtools(它是最新的)绑定在一起。我构建软件包的典型过程是:

  1. 全部加载
  2. Reoxygenize
  3. 构建&重载
  4. 检查
  5. 构建源包
  6. 如果一切都没有错误或警告,那么我:

        install.packages("foo.tar.gz", repos=NULL, type="source")
    

    自升级到R 3.0.1以来,我现在收到此警告:

       Warning in install.packages : 
          foo.tar.gz is not available (for R version 3.0.1)
    

    我在安装之前也尝试过,它没有消除警告:

        options(install.packages.check.source = FALSE)
    

    另外,当我打开devtools库时,我会注意到这个警告:

        WARNING: Rtools 3.0 found on the path at c:/Rtools is not compatible with R 3.0.1.
    

    这很奇怪,从R> 2.15.1到R 3.0.x,Rtools 3.0被认为是好的

    任何想法发生了什么?

1 个答案:

答案 0 :(得分:11)

这是特定于RStudio的,因为它们从utils中包装和/或更改了许多函数以实现更好的集成。问题在于调用getDependencies()来检查依赖项。但是该函数还将检查CRAN上是否存在原始包,并在没有时抛出给定的警告。您刚刚在自己的计算机上构建的软件包显然不在CRAN上,因此警告。

在本机install.packages()的源代码中,如果您从源代码构建或分别从其他存储库安装,则不会调用getDependencies()。另一方面,RStudio在将所有内容传递给本地getDependencies()函数之前调用install.packages()

据我所知,除了令人困惑的人之外没有进一步的影响。我没有找到一种在RStudio中方便地摆脱这种情况的方法,因为suppressWarnings()在这种情况下不起作用,因为RStudio处理这个问题很复杂。

在基本的R控制台中,你应该没有任何问题。

所以暂时,我会忽略这一点,并希望RStudio团队有时间处理这个小问题。