On 12/02/2015 11:08 AM, Li, Yan wrote:
Dear All,

I build a R package which will need to call external C functions. I registered 
the C functions in the NAMESPACE file and include 32bit and 64bit dlls in the 
packages. If I load the package in 64bit R and calls the external C functions, 
it works fine. However if I load the package in 32bit R and call the external C 
functions, it either does not work properly or gives back error message saying 
cannot find the external C functions.

When I built the same package in R2.15.1, there is no such issue.

I checked the update news for R303 and found most .C is replaced by .Call. I 
modified the code but the package cannot be loaded and R ended abnormally.

Does anyone know if there any difference of 32bit R303 calling external C from 
64bitR303? Thank you!

There's no R303; the current version is 3.1.2. So if you meant 3.0.3, I'd suggest upgrading. If you meant something else, you're probably in the wrong place.

For 3.1.2, there are big differences: 32 bit R can't call 64 bit .dlls and vice versa. You can either install the package from source in both versions, or arrange to compile both 32 bit and 64 bit dlls, in which case both versions can use the binary of the package.

If you've already done all that, then you'll need to give more details, e.g. access to the source for the package, to get more specific help.

Duncan Murdoch

______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to