[R] install.packages() for local source file

Liaw, Andy andy_liaw at merck.com
Sat Jan 1 22:36:58 CET 2005


The version of ?install.packages (in R-2.0.1) I've read never said it could
install local source packages, so why would it be considered a bug not being
able to do something that is never claimed?  You seem to expect the function
to do something that it is never designed to do.

Andy

> From: Paul Roebuck
> 
> On Sat, 1 Jan 2005, Liaw, Andy wrote:
> 
> > > From: Paul Roebuck
> > >
> > > Wish to install a local source package on Un*x platform from
> > > within R. Same thing as I can accomplish from cmdline as
> > >
> > > $ export R_LIBS=~/R/library
> > > $ cd /path/to/pkg
> > > $ R CMD INSTALL -l $R_LIBS <pkgname>
> > >
> > >
> > > So, how do you go about this anyway?
> > > And isn't this a bug in 'install.packages'?
> > >
> > > -------
> > > $ R
> > >
> > > R : Copyright 2004, The R Foundation for Statistical Computing
> > > Version 1.9.0  (2004-04-12), ISBN 3-900051-00-3
> > >
> > > > file.pkg <- "mypkg_0.1.tar.gz"
> > > > path.pkg <- file.path(path.expand("~"), "cvknn", file.pkg)
> > > > file.exists(path.pkg)
> > > [1] TRUE
> > > > uri.pkg <- paste("file://", path.pkg, sep = "")
> > > > install.packages(contriburl = uri.pkg, lib = 
> Sys.getenv("R_LIBS"))
> > > Error in file.info(x) : Object "tmpd" not found
> > > > traceback()
> > > 4: file.info(x)
> > > 3: dirTest(destdir)
> > > 2: download.packages(pkgs, destdir = tmpd, available = available,
> > >        contriburl = contriburl, method = method)
> > > 1: install.packages(contriburl = uri.pkg, lib = 
> Sys.getenv("R_LIBS"))
> > > > version
> > >          _
> > > platform sparc-sun-solaris2.9
> > > arch     sparc
> > > os       solaris2.9
> > > system   sparc, solaris2.9
> > > status
> > > major    1
> > > minor    9.0
> > > year     2004
> > > month    04
> > > day      12
> > > language R
> >
> > Please read ?install.packages.  It's most definitely not a bug for a
> > function that works as documented.  If you want, you might take the
> > source for install.packages and strip it down to do what you want,
> > say something called installLocalPackages.
> 
> Well, I called myself having read it but it still wasn't obvious
> to me; hence I posted the question here. Exactly which part should
> I have read more carefully? I will grant that I left out one thing
> when I did my cut'n'paste but it doesn't change the result.
> My attempt to install my local package should have read:
> 
> > install.packages("mypkg",
>                    contriburl = uri.pkg,
>                    lib = Sys.getenv("R_LIBS"))
> 
> Looking at the source, 'tmpd' is only set if the protocol
> is not "file:". Since I use that protocol, it would seem
> to me that passing 'NULL' instead of 'tempfile("Rinstdir")'
> would constitute a bug.
> 
> ----------------------------------------------------------
> SIGSIG -- signature too long (core dumped)
> 
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! 
> http://www.R-project.org/posting-guide.html
> 
>




More information about the R-help mailing list