R: Install Add-on Packages

INSTALL {utils} | R Documentation

## Install Add-on Packages

### Description

Utility for installing add-on packages.

### Usage

    R CMD INSTALL [options] [-l lib] pkgs

### Arguments

`pkgs` | A list with the path names of the packages to be installed.
`lib` | the path name of the R library tree to install to.
`options` | a space-separated list of options through which in particular the process for building the help files can be controlled. Options should only be given once. Use `R CMD INSTALL --help` for the current list of options.

### Details

If used as `R CMD INSTALL pkgs` without explicitly specifying `lib`, packages are installed into the library tree rooted at the first directory given in the environment variable `R_LIBS` if this is set and non-null, and to the default library tree (which is rooted at ‘`$R_HOME/library`’) otherwise.

To install into the library tree `lib`, use `R CMD INSTALL -l lib pkgs`.

Both `lib` and the elements of `pkgs` may be absolute or relative path names. `pkgs` can also contain name of package archive files of the form ‘`pkg_version.tar.gz`’ as obtained from CRAN, these are then extracted in a temporary directory.

Some package sources contain a ‘`configure`’ script that can be passed arguments or variables via the option `--configure-args` and `--configure-vars`, respectively, if necessary. The latter is useful in particular if libraries or header files needed for the package are in non-system directories. In this case, one can use the configure variables `LIBS` and `CPPFLAGS` to specify these locations (and set these via `--configure-vars`), see section “Configuration variables” in “R Installation and Administration” for more information. (If these are used more than once on the command line, only the last instance is used.) One can bypass the configure mechanism using the option `--no-configure`.

If `--no-docs` is given, no help files are built. Options `--no-text`, `--no-html`, and `--no-latex` suppress creating the text, HTML, and LaTeX versions, respectively. The default is to build help files in all three versions.

If the option `--save` is used, the installation procedure creates a binary image of the package code, which is then loaded when the package is attached, rather than evaluating the package source at that time. Having a file ‘`install.R`’ in the package directory makes this the default behavior for the package (option `--no-save` overrides). You may need `--save` if your package requires other packages to evaluate its own source. If the file ‘`install.R`’ is non-empty, it should contain R expressions to be executed when the package is attached, after loading the saved image. Options to be passed to R when creating the save image can be specified via `--save=ARGS`.

If the attempt to install the package fails, leftovers are removed. If the package was already installed, the old version is restored.

Use `R CMD INSTALL --help` for more usage information.

### Packages using the methods package

Packages that require the methods package, and that use functions such as `setMethod` or `setClass`, should be installed by creating a binary image.

The presence of a file named ‘`install.R`’ in the package's main directory causes an image to be saved. Note that the file is not in the ‘`R`’ subdirectory: all the code in that subdirectory is used to construct the binary image.

Normally, the file ‘`install.R`’ will be empty; if it does contain R expressions these will be evaluated when the package is attached, e.g. by a call to the function `library`. (Specifically, the source code evaluated for a package with a saved image consists of a suitable definition of `.First.lib` to ensure loading of the saved image, followed by the R code in file ‘`install.R`’, if any.)

### See Also

`REMOVE` and `library` for information on using several library trees; `update.packages` for automatic update of packages using the internet; the chapter on “Creating R packages” in “Writing R Extensions” (see the ‘`doc/manual`’ subdirectory of the R source tree).

[Package Contents]