@@ -6,8 +6,9 @@ Version 0.11.0 of the Rcpp package is now on CRAN and its mirrors.
66
77This new release brings a number of new features, most noticably a simplified
88build, as well as improvements to existing features and bugfixes. Complete
9- details can be found in the NEWS and ChangeLog files which are included in
10- the package.
9+ details of the changes implemented between the last announcement for version
10+ 0.10.0 and this new can be found in the NEWS and ChangeLog files which are
11+ included in the package.
1112
1213
1314
@@ -28,7 +29,20 @@ Several key features of the new 0.11.0 release are described below.
2829
2930
3031
31- ===== Building with Rcpp =====
32+ ===== One-time rebuild required =====
33+
34+ Because of the simplified linking scheme detailed in the next section, and
35+ the corresponding removal of the libRcpp.* library, all packages currently
36+ using Rcpp need to be reinstalled.
37+
38+ We provide a simple helper script at
39+ https://github.com/RcppCore/rcpp-logs/blob/master/scripts/showReverseRcppDepends.r
40+ to identidy which of your currently-installed packages use Rcpp, and need to
41+ be rebuilt.
42+
43+
44+
45+ ===== Simpler Building with Rcpp =====
3246
3347Thanks to the 'LinkingTo:' directive, R already instructed the compiler where
3448to fine header files when writing code with Rcpp. The package now uses the
@@ -39,10 +53,17 @@ Rcpp code will be properly instantiated without any explicit linking. [ Note
3953that just using 'import(Rcpp)' is not sufficient, but any exported C++
4054identifier should do -- evalCpp is nice and short. ]
4155
42- The key benefit is that package should no longer require files src/Makevars
43- and src/Makevars.win to link with Rcpp, and many packages will be able to
44- retire these values. The exception, of course, is the case where the package
45- links against an external library.
56+ This means that the package no longer provides a user-facing library
57+ libRcpp.so (or libRcpp.dylib or libRcpp.dll). This also implies that a
58+ one-time rebuild is needed as alluded to in the previous section.
59+
60+ The key benefit is that many package should no longer require the files
61+ src/Makevars and src/Makevars.win in order to link with Rcpp. Mny packages
62+ will be able to retire these files. The exception, of course, is the case
63+ where a package links against an external library as eg the RcppArmadillo
64+ package> Here, the LAPACK / BLAS / Fortran libraries still need to be
65+ linked. However, the corresponding values are also provided by R and the
66+ expression becomes a simple 'PKG_LIBS=$(LAPACK_LIBS) $(BLAS_LIBS) $(FLIBS)'.
4667
4768
4869
@@ -53,6 +74,7 @@ further and have now become the standard way to build code with Rcpp. See
5374the dedicated vignette for details.
5475
5576
77+
5678==== C++11 Support =====
5779
5880R 3.1.0, to be released in a few month, will permit compilation using C++11,
@@ -64,6 +86,7 @@ already supported 'local' builds using C++11 since version 0.10.3, simply add
6486and Rcpp attributes takes care of the rest.
6587
6688
89+
6790===== Memory management =====
6891
6992A number of internal data structures were rewritten.
@@ -75,6 +98,9 @@ A number of internal data structures were rewritten.
7598Rcpp site:
7699 http://www.rcpp.org
77100
101+ Rcpp Gallery:
102+ http://gallery.rcpp.org
103+
78104Dirk's Rcpp page:
79105 http://dirk.eddelbuettel.com/code/rcpp.html
80106
0 commit comments