[Rd] Re: [R] Problem in method's Makefile?

Prof Brian Ripley ripley at stats.ox.ac.uk
Thu Aug 5 21:50:29 CEST 2004

This is really an R-devel question -- it is about an unreleased version of 

On Thu, 5 Aug 2004, Jeff Gentry wrote:

> Hi there ...
> Not too long after the switch to using Subversion I tried to checkout &
> build R but encountered an error - and being short on time at that point
> put it off to look at later.  So today I sat down again and was
> encountering this error every time I would attempt to build:
>  dumping R code in package 'methods'
>  Saving namespace image ...
>  initializing class and method definitions now ...done
>  <environment: namespace:methods>
>  usage: touch [-acfm] [-r file] [-t [[CC]YY]MMDDhhmm[.SS]] file ...
>  *** Error code 1
> I traced this down to the Makefile in methods:
> $(top_builddir)/library/$(pkg)/R/$(pkg).rdb: $(top_builddir)/library/$(pkg)/R/all.rda
>         @echo "tools:::makeLazyLoading(\"$(pkg)\")" | \
> /dev/null
>         @cat /dev/null > $(top_builddir)/library/$(pkg)/R/all.rda
>         @touch $^
> I'm not sure what it is about that touch call, but commenting it out
> causes things to build normally.  When I try to echo '$^', it appears to
> be an empty string.
> This is all on a FreeBSD machine - I'm assuming it is somehow OS specific
> as this would have come up a bunch of times if it wasn't.  

Yes.  Seems a make peculiarity, not even shared by Solaris make.
To get you going, replace $^ by 
$(top_builddir)/library/$(pkg)/R/$(pkg).rdb.  However, I am working right 
now on streamlining this now we don't allow lazy-loading to be optional.

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

More information about the R-devel mailing list