Imanuel Costigan
2012-Nov-02 09:28 UTC
[Rd] Can't install.packages() from local repo in 2.15.2
Hi guys I think there's a high chance this is a bug. But I can't rule out that I can be blamed for this. I've posted this to bugzilla (#15092). Then I read that I probably should have posted it to R-develop first. Sorry for doing this in the wrong order. I've set up a local repo on my local drive (happens to be mapped to L:/). It has the following structure (as per http://cran.r-project.org/doc/manuals/R-admin.html#Setting-up-a-package-repository): L:/R/bin/windows/contrib/ 2.11/ 2.12/ 2.13/ 2.14/ 2.15/ L:/R/src/contrib I created a bare bones package (`anRpackage`) using `package.skeleton`. I cleaned it up and added a basic function, checked it and built it from command line using `R CMD INSTALL --build .`. That generates `anRpackage_1.0.zip` with no errors. Note: ``` $ R CMD INSTALL --build --version R add-on package installer: 2.15.2 (r61015) ``` I have Rtools 2.16 installed (as this is for R >2.15.1 to R 2.16.x). I have also followed the instructions here: http://cran.r-project.org/doc/manuals/R-admin.html#The-Windows-toolset I copy that to L:/R/bin/windows/contrib/2.15 (for example), run `tools::write_PACKAGES()` in that directory. That successfully generates the packages file. I also run `tools::write_PACKAGES()` in L:/R/src/contrib to generate an empty PACKAGES file. I have the following in my .Rprofile (among other things): ``` .First <- function () { options( repos = c(CRAN = "http://cran.csiro.au/", LREPO = "file:///L:/R/")) } ``` I run `install.packages("anRpackage") and I get the following error: ``` Installing package(s) into ?C:/Program Files/R/R-2.15.2/library? (as ?lib? is unspecified) Warning in install.packages : package ?anRpackage? is not available (for R version 2.15.2) ``` Same issue on another Windows machine. However, if I run `install.packages("L:/R/bin/windows/contrib/2.15/anRpackage_1.0.zip", repos=NULL)`, it installs successfully. I do not have this problem in R 2.15.1. NB: If I provide full file path to install.packages and set repos=NULL, and then check the package's DESCRIPTION file in the help, I see this at the bottom: `Built: R 2.15.2; ; 2012-11-01 00:22:07 UTC; windows` (when I've built package using 2.15.2 obviously) Thanks.
Prof Brian Ripley
2012-Nov-04 09:32 UTC
[Rd] Can't install.packages() from local repo in 2.15.2
Your subject line isn't truthful. At the very least you are talking about binary packages on Windows using a file:// repository ('local' does not usually mean that, and is specified by NULL). I think you have not understood the NEWS item: most likely you do not have a parallel source repository. * For a Windows or Mac OS X binary package install, install.packages() will check if a source package is available on the same repositories, and report if it is a later version or there is a source package but no binary package available. This check can be suppressed: see the help page. I guess you did not do so. Try options(install.packages.check.source = FALSE) which works for me. You could also specify contriburl, as you have a partial repository. On 02/11/2012 09:28, Imanuel Costigan wrote:> Hi guys > > I think there's a high chance this is a bug. But I can't rule out that I can be blamed for this. I've posted this to bugzilla (#15092). Then I read that I probably should have posted it to R-develop first. Sorry for doing this in the wrong order. > > I've set up a local repo on my local drive (happens to be mapped to L:/). It has the following structure (as per http://cran.r-project.org/doc/manuals/R-admin.html#Setting-up-a-package-repository): > > L:/R/bin/windows/contrib/ > 2.11/ > 2.12/ > 2.13/ > 2.14/ > 2.15/ > L:/R/src/contrib > > I created a bare bones package (`anRpackage`) using `package.skeleton`. I cleaned it up and added a basic function, checked it and built it from command line using `R CMD INSTALL --build .`. That generates `anRpackage_1.0.zip` with no errors. Note: > > ``` > $ R CMD INSTALL --build --version > R add-on package installer: 2.15.2 (r61015) > ``` > > I have Rtools 2.16 installed (as this is for R >2.15.1 to R 2.16.x). I have also followed the instructions here: http://cran.r-project.org/doc/manuals/R-admin.html#The-Windows-toolset > > I copy that to L:/R/bin/windows/contrib/2.15 (for example), run `tools::write_PACKAGES()` in that directory. That successfully generates the packages file. I also run `tools::write_PACKAGES()` in L:/R/src/contrib to generate an empty PACKAGES file. > > I have the following in my .Rprofile (among other things): > > ``` > .First <- function () > { > options( repos = c(CRAN = "http://cran.csiro.au/", > LREPO = "file:///L:/R/")) > } > ``` > > I run `install.packages("anRpackage") and I get the following error: > > ``` > Installing package(s) into ?C:/Program Files/R/R-2.15.2/library? > (as ?lib? is unspecified) > Warning in install.packages : package ?anRpackage? is not available (for R version 2.15.2) > ``` > > Same issue on another Windows machine. > > However, if I run `install.packages("L:/R/bin/windows/contrib/2.15/anRpackage_1.0.zip", repos=NULL)`, it installs successfully. > > I do not have this problem in R 2.15.1. > > NB: If I provide full file path to install.packages and set repos=NULL, and then check the package's DESCRIPTION file in the help, I see this at the bottom: > > `Built: R 2.15.2; ; 2012-11-01 00:22:07 UTC; windows` > > (when I've built package using 2.15.2 obviously) > > Thanks. > > ______________________________________________ > R-devel at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel >-- Brian D. Ripley, ripley at stats.ox.ac.uk Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UK Fax: +44 1865 272595
Apparently Analagous Threads
- tar warnings in R-3.0.2 RC when R is installed by a different (non-root) user
- Possible Regression in setClassUnion between 3.5.0 and 3.6.0
- Possible Regression in setClassUnion between 3.5.0 and 3.6.0
- Class not found when search in .onLoad
- Possible Regression in setClassUnion between 3.5.0 and 3.6.0