jonkeane commented on a change in pull request #9579: URL: https://github.com/apache/arrow/pull/9579#discussion_r589518255
########## File path: r/README.md ########## @@ -178,6 +178,28 @@ For any other build/configuration challenges, see the [C++ developer guide](https://arrow.apache.org/docs/developers/cpp/building.html) and `vignette("install", package = "arrow")`. +### Using `remotes::install_github(...)` + +If you need an Arrow installation from a specific repository or at a specific ref, `remotes::install_github()` should work on most platforms. This method is helpful if you need a full install of arrow that is separate from another install (e.g. we use this in [arrowbench](https://github.com/ursacomputing/arrowbench) to install development versions of arrow isolated from the system install). However there are some caveats to be aware of: + +* Setting the environment variable `FORCE_TOOLS_LIBS_SCRIPT` to `true` will avoid linking to any arrow libraries already installed and attempt to build arrow from the same source at the repository+ref given. +* If you are using the `FORCE_TOOLS_LIBS_SCRIPT` you must also set `build = FALSE` in the `remotes::install_github()` call. This is similar to checking out the repository and calling `R CMD INSTALL .` in the `arrow/r` directory (as opposed to first calling `R CMD BUILD .` and then installing the tar.gz file that produces, which is the default for `remotes::install_github()`). Review comment: For almost all instances, yes. It *is* possible to `build = TRUE` IFF you already have a compatible libarrow in your system library and you don't set `FORCE_TOOLS_LIBS_SCRIPT`. This isn't a way that anyone should install arrow though, because it is difficult to diagnose and make sure you're matched up correctly and there's little (no?) reason to need a remote ref. of the r package but not have it cloned locally. I can paper over that and basically say "these two must always be set" if we want since the technicality isn't a useful use case ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org