我创建了我的第一个R软件包并有一个问题。
该软件包在我的计算机上成功运行。但是,如果我的用户(没有所需的包装(运行我的软件包,他们会遇到一个错误,说所需的软件包不可用。当他们从Cran手动安装该包装时,我的包裹将工作。
根据哈德利·威克姆(Hadley Wickam(的书(http://r-pkgs.had.co.nz/description.html(:
导入:此处列出的软件包必须存在才能使您的软件包工作。实际上,每当您的软件包安装时,这些软件包都会在计算机上安装(DevTools :: load_all((也可以检查软件包是否已安装(。
我将所有必需的软件包放入 imports 字段中> Description 中。如何自动安装所需的软件包?使用我的用户是否需要安装所有必需的软件包?
附加背景:
- 我在脚本中使用章程 package_name :: function_name 。
- 我将软件包作为二进制软件包分发。
- 用户从本地目录安装包裹,因此无法指定依赖项= true nastal.packages。
我做了什么:
- 阅读哈德利·威克姆(Hadley Wickham(的书r包
- 阅读导入的软件包不会自动安装和R包依赖项但没有找到有关我问题的任何信息。
谢谢!
您可以尝试使用
devtools::install_deps()
或
devtools::install_deps("pkg_version.tar.gz")
但是,此功能似乎存在一些问题,C.F。https://github.com/r-lib/devtools/issues/1370
替代方案是使用链接问题中建议的drat
。
刚刚发现没有安装依赖项,因为我的软件包不是从cran repo中安装的。
使用devtools::install_local("pkgname.tar.gz")
将安装软件包和任何依赖项。