[R] passing arguments to R CMD SHLIB

Kurt Hornik Kurt.Hornik at ci.tuwien.ac.at
Wed Mar 14 08:19:48 CET 2001


>>>>> Prof Brian D Ripley writes:

> On Tue, 13 Mar 2001, Faheem Mitha wrote:
>> 
>> 
>> On Tue, 13 Mar 2001, Prof Brian D Ripley wrote:
>> 
>> > On Tue, 13 Mar 2001, Faheem Mitha wrote:
>> 
>> > > it doesn't look like the arguments -O2 and -Wall get passed down. Is there
>> > > some reason for this? I certainly would like error checking to be turned
>> > > on as much as possible.
>> >
>> > Well, no one said they would be!  If you want to alter flags, they are
>> > set as CFLAGS R_HOME/etc/Makeconf or Makevars. I have -O2 -Wall -pedantic.
>> > I don't think you need -lm as R is linked against that.
>> 
>> Is it possible to set CFLAGS at the user level? I am usually not terribly
>> keen to alter system config files (Makeconf in this case). For one thing,
>> I don't always have root access on the systems I use, and for another I
>> tend to lose my changes when I upgrade.

> I did say so: use a file Makevars. You can only add that way. If you do

> cat > Makevars
> PKG_CPPFLAGS=-O2 -Wall
> ^D

> then that will be added to CFLAGS.

> If you lose changes, make them in the file config.site, and copy that
> in when you build a new version of R.  Works for me!

My recommendation would be along the lines of the FAQ:

   Suppose you have C code file for dynloading into R, but you want to
use `R CMD SHLIB' with compilation flags other than the default ones
(which were determined when R was built).  You could change the file
``R_HOME'/etc/Makeconf' to reflect your preferences.  If you are a
Bourne shell user, you can also pass the desired flags to Make (which
is used for controlling compilation) via the Make variable `MAKEFLAGS',
as in

     MAKEFLAGS="CFLAGS=-O3" R CMD SHLIB *.c

-k
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._



More information about the R-help mailing list