[R-pkg-devel] "crossprod" is not a BUILTIN function

Ivan Krylov kry|ov@r00t @end|ng |rom gm@||@com
Wed Oct 25 21:26:06 CEST 2023


В Wed, 25 Oct 2023 21:02:00 +0200
Plamen Mirazchiyski <plamen.mirazchiyski using ineri.org> пишет:

> Today I was preparing a new version for the RALSA package. I have
> built a Windows package using "devtools::check_win_devel()".

> The machine has R 4.3.1, the latest official release. After I load the
> test RALSA package, R displays a message saying "Package RALSA built
> under R version 4.4.0"

Can you use R CMD build to make a .tar.gz source package and then
install that on the Windows 10 machine running R 4.3.1? There is
convenience and a lot of added value in both Win-Builder and devtools,
but it shouldn't be necessary to rely on 96 CRAN packages and an online
service just to build a package.

crossprod(x,y) has indeed been recently changed from
.Internal(crossprod(x, y)) to .Primitive("crossprod"). This makes it
possible for a binary package prepared using R-devel (with a call to
.Primitive('crossprod')) to misbehave on a released version of R (which
does have .Internal(crossprod(...)) but not .Primitive('crossprod')).

Installing from source will avoid this problem. So will building the
binary package using R-4.3.1 to run it on a different machine with
R-4.3.1.



-- 
Best regards,
Ivan




More information about the R-package-devel mailing list