[R-pkg-devel] Another DLL requires the use of native symbols thread

Shawn Way @w@y @end|ng |rom empowerph@rm@cy@com
Sat Mar 25 14:01:06 CET 2023


Sorry to kind of repeat this but I really didn't understand the issues with the prior thread and how it relates to my issue.

I'm getting the error message in

    B_T <- BT(Temp)
    Error in BT(Temp) : DLL requires the use of native symbols
    Execution halted

And frankly, I have no idea what this means.  The function call is pretty simple and meets the requirement of .Fortran

res <- .Fortran('BT', as.double(Temp), as.double(y), as.integer(icode))

and the following matches the R-ext's method for using registration:

extern void F77_NAME(bt)(double *T, double *B, int *icode);

void R_init_IAPWS95(DllInfo *dll)
{
  R_registerRoutines(dll, NULL, NULL, FortranEntries, NULL);
  R_useDynamicSymbols(dll, FALSE);
  R_forceSymbols(dll, TRUE);
}

With

static const R_FortranMethodDef FortranEntries[] = {
  {"bt",        (DL_FUNC) &F77_NAME(bt),        3},
  {NULL, NULL, 0}
};

Furthermore the NAMESPACE includes:

useDynLib(splines, .registration = TRUE, .fixes = "C_")


which matches R-ext.

Since this is only occurring on the Linux versions for the software and I use windows, can someone point me in the right direction to fix this error?

Shawn Way

	[[alternative HTML version deleted]]



More information about the R-package-devel mailing list