[R] install.packages() for local source file
Paul Roebuck
roebuck at odin.mdacc.tmc.edu
Sat Jan 1 22:25:17 CET 2005
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)
More information about the R-help
mailing list