(Redirected from r-packages, which is supposed to be an annoucements-only list, to r-devel which is for R development questions.) On 21 April 2011 at 08:10, Jay Emerson wrote: | We have used the BOOST interprocess libraries in package bigmemory | (and synchronicity, and ...) for about 3 years now. There is also a RQuantLib switched to using Boost when QuantLib did in June 2004, or almost seven years ago. | plan (more than tentative, but yet to actually happen) to provide a | package on CRAN that will provide these for more efficient use (having | multiple copies floating around across separate packages seems silly). | | If you are interested in this, please feel free to email me or Dirk | (and if you are not aware of Rcpp et. al. you should have a look | there, too). Cedric is a list member of rcpp-devel. | >I would like to know whether anyone had experience using the C++ Boost | >library within an R package, and how portable was the resulting package. Packages are perfectly portable as that is a main goal of Boost. So in that sense the question is misdirected; few things are as 'portable' as Boost. The issue is more about how to ensure _binary libraries_ are found if needed for linking. Boost itself is a (vast) collection of libraries (in the abstract sense of 'packages'), and only a few employ (binary) libraries. Many can be used in a pure template sense so that only headers are needed at compile time. That is what Jay refers to above: we are contemplating creating a common boost headers package to be used by the half dozen packages shipping their own copies. | >I am especially thinking of possible compiling problems on Windows and | >Apple systems. | | >If anyone had any tips on how to render an R package using Boost | >portable, that would be very much appreciated. Back to the issue of finding Boost libraries: you can study existing packages. RQuantLib for example needs to use a configure snippet and a special case on Windows. But in case you just want to use templates, look at RcppBDT --- an example package using Rcpp and its 'Rcpp modules' feature to easily access Boost Date_Time. It by choise does not use Date Time string parsing and formatting and hence uses only templated headers---and as such is easily buildable on Windows, OS X, ... as the CRAN page http://cran.r-project.org/package=RcppBDT and its links show. Hope this helps, Dirk -- Dirk Eddelbuettel | edd at debian.org | http://dirk.eddelbuettel.com