我在R CMD INSTALL --build packageWindows电脑上运行.我的包导入了几个本身依赖于更多包的其他包.我在本地r_libs文件夹中安装了所有依赖项,一切正常.
现在有时我在不同的Windows计算机上有我的包源代码.在这台计算机上,我没有安装所有的依赖包.
当我尝试使用时R CMD INSTALL --build package,我得到了明显的" ERROR: dependencies 'package a', 'package b', etc, are not available for package".
我的问题是:我可以使用编译软件包R CMD INSTALL --build,而不依赖项检查不除去Import,并Depends在项目中的DESCRIPTION文件?
咨询后--help,我尝试了--no-test-load选项,但没有运气.
我想你想在没有安装所有依赖项的计算机上构建包的.zip二进制版本.而且我担心我不得不让你失望,因为这是不可能的.
构建二进制包分两步完成:首先从源安装包(这就是你必须使用的原因R CMD INSTALL,然后创建的二进制文件以方便的格式压缩,以便在windows机器上安装.安装时检查依赖项从源代码,任何缺少的依赖项将抛出您正面临的错误.
由于R在从源代码安装时需要来自依赖项的信息,因此在构建整个项目之前无法安装它们.这也是有道理的.R中安装的软件包包含一组.rds文件,其中包含更方便R格式的软件包信息.为了为NAMESPACE文件创建该信息,它需要能够访问从中导入函数的软件包.如果不是,则无法构造有关命名空间的正确信息.
因此,您唯一的选择是在用于构建的计算机上安装依赖项.如果您确实想在该计算机上使用该软件包,则无论如何都必须安装这些依赖项.
更多信息:R Internals:https://cran.r-project.org/doc/manuals/r-release/R-ints.html#Package-Structure
编写R扩展:https://cran.r-project.org/doc/manuals/r-release/R-exts.html#Package-namespaces
| 归档时间: |
|
| 查看次数: |
820 次 |
| 最近记录: |