Find Tools Needed to Build R Packages

Provides functions used to build R packages. Locates compilers needed to build R packages on various platforms and ensures the PATH is configured appropriately so R can use them.


Travis-CI Build Status AppVeyor Build Status Coverage status

The goal of pkgbuild is to make it easy to build packages with compiled code. It provides tools to configure your R session, and check that everything is working ok. If you are using RStudio, it also helps you trigger automatic install of the build tools.

Installation

You can install pkgbuild from github with:

# install.packages("devtools")
devtools::install_github("r-lib/pkgbuild")

Example

# Check that you have the build tools installed
pkgbuild::check_build_tools(debug = TRUE)
 
# Build a package
pkgbuild::build("/path/to/my/package")
 
# Run your own code in an environment guaranteed to 
# have build tools available
pkgbuild::with_build_tools(my_code)

News

pkgbuild 1.0.2

  • build() and compile_dll() gain a register_routines argument, to automatically register C routines with tools::package_native_routines_registration_skeleton() (#50)

  • build() will now warn if trying to build packages on R versions <= 3.4.2 on Windows with a space in the R installation directory (#49)

  • build() will now message if a build contains long paths, which are unsupported on windows (#48)

  • compile_dll() no longer doubles output, a regression caused by the styling callback. (https://github.com/r-lib/devtools/issues/1877)

  • build() output is now styled like that in the rcmdcheck package (https://github.com/r-lib/devtools/issues/1874).

  • build() no longer sets compile flags (#46)

pkgbuild 1.0.1

  • compile_dll() now does not supply compiler flags if there is an existing user defined Makevars file.

  • local_build_tools() function added to provide a deferred equivalent to with_build_tools(). So you can add rtools to the PATH until the end of a function body.

pkgbuild 1.0.0

  • Add metadata to support Rtools 3.5 (#38).

  • build() only uses the --no-resave-data argument in R CMD build if the --resave-data argument wasn't supplied by the user (@theGreatWhiteShark, #26)

  • build() now cleans existing vignette files in inst/doc if they exist. (#10)

  • clean_dll() also deletes symbols.rds which is created when compile_dll() is run inside of R CMD check.

  • First argument of all functions is now path rather than pkg.

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("pkgbuild")

1.0.2 by Jim Hester, a month ago


https://github.com/r-lib/pkgbuild


Report a bug at https://github.com/r-lib/pkgbuild/issues


Browse source code at https://github.com/cran/pkgbuild


Authors: Hadley Wickham [aut] , Jim Hester [aut, cre] , RStudio [cph]


Documentation:   PDF Manual  


GPL-3 license


Imports callr, cli, crayon, desc, prettyunits, R6, rprojroot, withr

Suggests Rcpp, testthat, covr


Imported by PSPManalysis, RInno, devtools, fakemake, pkgload, rcmdcheck, rstan.

Suggested by remotes.


See at CRAN