【问题标题】:Error in R CMD Check: Packages required but not availableR CMD 检查中的错误:需要但不可用的包
【发布时间】:2013-01-16 12:46:01
【问题描述】:

我正在尝试创建一个包。这取决于几个包。我将导入添加到命名空间文件和描述文件中的 Depends。

我找到了可能的解决方案 herehere,但这些都不起作用——我想是因为我在 CentOS 上。

这是我在屏幕上看到的:

[hadoop@localhost RProjects]$ sudo R CMD check TextPreProcess
* using log directory ‘/home/hadoop/RProjects/TextPreProcess.Rcheck’
* using R version 2.15.1 (2012-06-22)
* using platform: x86_64-redhat-linux-gnu (64-bit)
* using session charset: UTF-8
* checking for file ‘TextPreProcess/DESCRIPTION’ ... OK
* checking extension type ... Package
* this is package ‘TextPreProcess’ version ‘1.0’
* checking package namespace information ... OK
* checking package dependencies ... ERROR
Packages required but not available:
  ‘RWeka’ ‘Snowball’ ‘lsa’ ‘plyr’ ‘snowfall’ ‘tau’ ‘tm’

See the information on DESCRIPTION files in the chapter ‘Creating R
packages’ of the ‘Writing R Extensions’ manual.

我经历了编写 R 扩展,但我无法深入了解如何解决我的问题。

【问题讨论】:

  • 我的猜测:R CMD check 在 vanilla 环境中检查你的包。这意味着它会在与您通常的库文件夹完全不同的文件夹中查找您的包。要纠正此问题,您可能必须创建一个指向您的库文件夹的.REnviron 文件。在此处查看帮助:cran.r-project.org/doc/manuals/r-release/…
  • 那会是创建一个文件->将其命名为 .Renviron->将 R_LIB= 放入文件夹中吧?
  • 是的,但它是R_LIBS=... - 请注意复数。您需要根据手册放入正确的文件夹,即~/.R/.Renviron,但您可能需要进行一些实验。
  • 我在控制台中做了一个 .libPaths() 。它显示了所有软件包的安装路径,所以,我猜这不是问题。
  • 顺便说一句,我没有 ~/.R 目录

标签: r packaging


【解决方案1】:

它现在正在工作。

我所做的是:

  1. ~/R/x86_64-redhat-linux-gnu-library/2.15 添加到 .libPaths(这是我的 R 库所在的位置)
  2. 分离 R 中的所有库
  3. 重新启动 R 会话。 (对于多个会话,请关闭所有会话。)
  4. 安装所需的软件包。
  5. 检查命名空间文件中的导入和导出是否正确。
  6. 检查描述文件中是否有必填字段。确保在“Depends”、“Imports”、“Suggests”和“Enhances”之间处理所有依赖关系。
  7. 检查过了。 R CMD check <pkg>。建造它。 R CMD build <pkg>。安装它。 R CMD INSTALL <tarball>
  8. 完成。

【讨论】:

    【解决方案2】:

    我遇到了同样的问题,因为安装了不同的 R 版本的软件包

    为了解决,我打开了旧的 R 版本(构建包的那个版本),并在该版本下安装了缺少的包,它解决了问题。

    例如

    # Version should match the version your package was built in
    R.version
    # 3.5.1
    
    install.packages(c('stringr', 'lubridate', 'testthat'))
    

    提示

    • 如果您需要检查您的 R 版本,只需输入R.version
    • 如果您需要切换 R 版本,请在 Windows 或 Mac 上启动 RStudio 时按住控制下载一个名为 RSwitch 的非常简单的应用程序以立即在版本之间切换(您仍然需要使用 @987654324 重新启动 R 会话@

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-24
      • 2014-06-08
      • 1970-01-01
      • 2018-12-29
      • 1970-01-01
      • 2017-04-18
      • 2014-11-05
      • 1970-01-01
      相关资源
      最近更新 更多