[Rd] forcing R CMD COMPILE

Pedro Ribeiro de Andrade Neto pedro at est.ufpr.br
Wed Mar 23 18:00:04 CET 2005


On Wed, 23 Mar 2005, Prof Brian Ripley wrote:

> On Wed, 23 Mar 2005, Pedro Ribeiro de Andrade Neto wrote:
>
> > I am developing a package with a lot of C++ code, and I have a question
> > about R CMD COMPILE. As I can see, when the package's Makefile calls
> >
> > R CMD COMPILE foo.cpp
>
> Why does your package have a Makefile?  And why is it calling COMPILE and
> not SHLIB?
>

My package has a Makefile because I need to compile 16 .cpp files. After
it, I call R CMD SHLIB.

> > R verifies if foo.o exists, and if it is up to date (last modified after
> > foo.cpp's last), trying to avoid recompile foo.cpp.
>
> Not quite: COMPILE is a make facility, and it calls make with its own
> Makefiles.  This does not seem appropriate to your usage.
>
> > But __all__ my files have other dependencies (at least a .h). The
> > Makefile verifies it, and calls COMPILE only when it is sure that foo.o
> > is not up to dated. The problem occours, for example, if I modify only
> > foo.h, and then compile again. R will say that foo.o is up to date, but
> > it is not true.
> >
> > Is there any way to force R CMD COMPILE?? Well, I can remove the .o file
> > before COMPILE, but I think R could do something about it...
>
> Better not to use R CMD COMPILE.  R itself does not (AFAICS): it is there
> for S-PLUS compatibility.  It seems only ROracle on CRAN does.
>
> Note that R CMD INSTALL is usually called on fresh sources (an unpacked
> tarball) so dependencies are not usually an issue.
>

OK. So I have to compile them with g++ implicitly (instead of using R CMD
COMPILE), and then call R CMD SHLIB.

Thanks,

Pedro Andrade

>
> --
> 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
>
>

--
LEG - Laboratorio de Estatistica e Geoinformacao
          http://www.est.ufpr.br/leg/
          Departamento de Estatistica
        Universidade Federal do Parana



More information about the R-devel mailing list