[Rd] Using custom R_LIBS with R CMD install

Hadley Wickham hadley at rice.edu
Wed Feb 8 21:05:45 CET 2012


2012/2/8 Uwe Ligges <ligges at statistik.tu-dortmund.de>:
>
>
> On 08.02.2012 19:36, Hadley Wickham wrote:
>>>
>>> I wonder it works that far. It won't for me on Windows nor Linux, because
>>> system2 passes the whole thing shQuoted to the shell. Hence it is highly
>>> shell dependent what happens with the ill formed command.
>>
>>
>> Well I was using the env argument to system2, which claims to be
>> cross-platform (at least for R and make).  This command:
>>
>> R_LIBS=/Users/hadley/R-dev R CMD INSTALL aL3xa-rapport-08e68ca/
>>
>> is ok, isn't it?
>
>
> You haven't said you were using the env argument, have you? If so, I missed
> that part. I assumed you were specifying the above as the "command"
> argument.
>
> Hmmm, former message not quoted, as we ask in the posting guide. Where is
> the reproducible example?

We seem to be having a bit of a communication breakdown.  This is the
code that I run from the command line (on mac os x):

R_LIBS=/Users/hadley/R-dev R CMD INSTALL aL3xa-rapport-08e68ca/
# Desktop : R_LIBS=/Users/hadley/R-dev R CMD INSTALL aL3xa-rapport-08e68ca/
# * installing to library ‘/Users/hadley/R’
# ERROR: dependency ‘ascii’ is not available for package ‘rapport’

But:

ls /Users/hadley/R-dev/
# HandyStuff animation  biOps      mcmcTools  mvbutils   quantreg   testthat
# SparseM    ascii      ggplot2    mturkr     nstest     scales     whisker

It's hard to provide a reproducible example because it depends on
exactly what package you have installed where, but I had hoped that
this would at least illustrate my problem - R CMD install doesn't seem
to be respecting R_LIBS.  I'm trying to understand whether this is a
bug, or something I don't understand correctly about R CMD INSTALL.

> That's right, then you want (under Linux alikes):
>
> system2("R", "CMD INSTALL package_version.tar.gz", env="R_LIBS=lib")
>
> obviously.
>
> Under Windows, you have to construct the shell command:
>
> "set R_LIBS=lib & R CMD INSTALL package_version.tar.gz"

To clarify, system2 doesn't work in windows?  The system2
documentation has: " On Windows, ‘env’ is currently only supported for
commands such as ‘R’ and ‘make’ which accept environment variables on
their command line."

Hadley

-- 
Assistant Professor / Dobelman Family Junior Chair
Department of Statistics / Rice University
http://had.co.nz/



More information about the R-devel mailing list