[Rcpp-devel] question re: LdFlags, RcppLdFlags

Dirk Eddelbuettel edd at debian.org
Wed Oct 9 23:43:48 CEST 2013


On 9 October 2013 at 23:13, Romain Francois wrote:
| Le 09/10/13 03:41, Dirk Eddelbuettel a écrit :
| >
| > On 8 October 2013 at 16:53, Dirk Eddelbuettel wrote:
| > | | This is also what's done in e.g. Rcpp.package.skeleton. However, following the
| > | | new guidelines from CRAN, RcppLdFlags was exported, but not LdFlags. I wonder
| > |
| > | Darn.  Error on my part.  It should have been LdFlags.  That was the intent.
| > | Oh well.
| >
| > Minor correction: Seems we need both. So back to export RcppLdFlags(), but
| > thanks to Kevin also exporting LdFlags().  Done in svn rev4566.
| >
| > Dirk
| 
| One good thing about the previous system was that other packages could 
| follow the same convention and also have a hidden LdFlags function 
| giving information about what is required to link against it.
| 
| I do it, e.g. on the dplyrRcpp package.
| 
| Now that it is exported, I get this when I load dplyrRcpp which is 
| annoying:
| 
| 
| L'objet suivant est masqué from ‘package:Rcpp’:
| 
|      LdFlags

Gosh, that sucks.  It'll bite a few of mine too.
 
| What would be the recommendation for such third party packages that also 
| ship a library.

Don't know, and am open for suggestions.  

Maybe the local packages need to rename their version?  

Or maybe I got it all wrong and we get by with fewer exports?  I am (as
usual) open for all sorts of changes at the Rcpp level (provided they don't
break anything).

| Was it really a problem that we called LdFlags with :::, did R CMD check 
| look for it in Makevars and Makevars.win ?

CRAN / R Core thought so and told everybody who ran 'R CMD check' with a new
version of R(-devel).  That has been going on for a few weeks.  Not sure if
you regularly build r-devel or run R CMD check, but it's been there for a
good while (and check R's NEWS commit log if you need to know more).

I think R 3.0.2 may now do it too; see NEWS.  

And see Kevin's email from yesterday.  I had also gotten private email from
another maintainer who apparently had CRAN yell at him over this.  <Sigh>

So from the Rcpp side we have little choice but to export LdFlags() as others are
calling it, and R CMD check now complains about the use -- unless it is exported.
 
| It is not really a problem for me, I can eliminate the need for a 
| library in dplyrRcpp.
| 
| Would it perhaps make sense to think about standard ways for R packages 
| to register what they need. We have a system like this for inline 
| plugins, maybe it would be interesting to move this up in R and let 
| packages communicate in some way (perhaps in DESCRIPTION) what they need.

Sounds good, make a proposal, get buy-in from R Core and I'll gladly adapt my
other packages once that is implemented.

Dirk

-- 
Dirk Eddelbuettel | edd at debian.org | http://dirk.eddelbuettel.com


More information about the Rcpp-devel mailing list