安装的R包不同于用过的R包来构建另一个包

时间:2017-11-05 08:25:21

标签: r install

我正在尝试编写R包。当我跑步时

devtools::check(),其中一条警告信息是

Found the following significant warnings: Warning: Installed Rcpp (0.12.12) different from Rcpp used to build dplyr (0.12.10).

然后我

remove.packages("Rcpp")

install.packages("Rcpp", repo = "https://cran.rstudio.com/bin/macosx/el-capitan/contrib/3.4/Rcpp_0.12.10.tgz")

它给了我 Warning in install.packages : cannot open URL 'https://cran.rstudio.com/bin/macosx/el-capitan/contrib/3.4/Rcpp_0.12.10.tgz/src/contrib/PACKAGES.rds': HTTP status was '404 Not Found'

最佳解决方案是什么?非常感谢!!

1 个答案:

答案 0 :(得分:2)

如果你还在起草这个软件包(还有一段时间才能实际使用它),你不应该太担心这个错误,因为它可能会有另一个变化这两个包的版本。显然,如果您遇到任何奇怪的错误,或者有最新版本的功能,您应该修复它。

在您的案例中降级包(更改Rcpp)是不可取的;相反,您应该将dplyrRcpp升级为并发版本。使用CRAN存储库可以最好地实现这一点。在一个新的会议中,

remove.packages(c("dplyr", "Rcpp"))
## Restart
install.packages("dplyr")  # Rcpp is a dependency

注意:要安装特定版本,请使用devtools::install_version

devtools::install_version("Rcpp", version = "0.12.10")

您遇到的错误是您指示install.packages查看包文件,就好像它是一个包存储库。这导致HTTP 404错误,因为相对于幻像存储库没有PACKAGES.rds文件。

要直接安装包文件,请在repos=NULL中设置install.packages