[Rd] CAR0 vs. EXTPTR_PTR
Dirk Eddelbuettel
edd @end|ng |rom deb|@n@org
Thu Jul 23 01:52:48 CEST 2020
On 22 July 2020 at 16:29, William Dunlap via R-devel wrote:
| I know that binary packages are R-version specific, but it was a bit
| surprising that Rcpp 1.0.5 built with R-4.0.2 cannot be loaded into
| R-4.0.0.
|
| % R-4.0.0 --quiet
| > library(Rcpp, lib="lib-4.0.2")
| Error: package or namespace load failed for ‘Rcpp’ in dyn.load(file,
| DLLpath = DLLpath, ...):
| unable to load shared object '/tmp/bill/lib-4.0.2/Rcpp/libs/Rcpp.so':
| /tmp/bill/lib-4.0.2/Rcpp/libs/Rcpp.so: undefined symbol: EXTPTR_PTR
| In addition: Warning message:
| package ‘Rcpp’ was built under R version 4.0.2
|
| It looks like R's include/Rinternals.h was rejiggered so the function
| EXTPTR_PTR is called when CAR0 used to be. (I think they do the same
| thing.)
AFAIK it is not so much that you cannot take a 4.0.2 binary "back" to an
older R version, it is more that 4.0.0/4.0.1 had an inadvertent change that
broke things.
This came up a few times already on a few of the lists and on stackoverflow.
And simply running R 4.0.2 and building on R 4.0.2 is the safest bet.
Dirk
--
https://dirk.eddelbuettel.com | @eddelbuettel | edd using debian.org
More information about the R-devel
mailing list