How to not need user input for install.packages(ty

2019-07-21 19:28发布

问题:

Normally, install.packages(..., type = "both") requires user input if there is a package that needs to be built from source.

For example (currently, with R 3.5.1), install.packages(c("feather", "tidyr"), type = "both")) will install tidyr from binary and feather from source, as long as there is a user to click "yes" when it gets to the feather install.

Is there a way to automatically click yes, or not require user input through some of the options to install.packages()?

Note: install.packages(..., type = "source") does not require user input, but it builds all packages, which is not the desirable behavior in this case.

回答1:

The install.packages.compile.from.source option can be set to "always" to install packages from source without prompting for UI. The default is "interactive", which will prompt for user confirmation when using type="both".

Solution:

option(install.packages.compile.from.source = "always")
install.packages(c("feather","tidyr"), type = "both")