[R-SIG-Mac] Problem loading a package libraries (Error in dyn.load) on mac environments
Frederic Fournier
frederic.bioinfo at gmail.com
Mon Dec 3 17:34:32 CET 2012
Hello everyone,
I'm working on a small R package for proteomics analysis, and I am
facing perplexing problems related to the 'dyn.load' function when
loading the package on mac environments.
The package relies on two external libraries, expat and pthread, and on
three cran packages: XML, Rcpp and data.table. I have no trouble
building, checking or installing the package. But when I load the
package on mac testing environments, I face various problems related to
this error message: "Error in dyn.load(file, DLLpath=DLLpath, ...): ..."
On one machine, the package loads without problem on i386 R, but fails
to load on x64 R; on another machine, things are reversed and the
package loads on x64, but fails to load on i386.
Here is the output from the machinge where the package loads on i386 but
fails on x64 R:
> library(rTANDEM)
Loading required package: XML
Loading required package: Rcpp
Loading required package: data.table
data.table 1.8.6 For help type: help("data.table")
Error in dyn.load(file, DLLpath = DLLpath, ...) :
unable to load shared object
'/Library/Frameworks/R.framework/Versions/2.16new/Resources/library/rTANDEM/libs/
x86_64/rTANDEM.so':
dlopen(/Library/Frameworks/R.framework/Versions/2.16new/Resources/library/rTANDEM
/libs/x86_64/rTANDEM.so, 6): Symbol not found: __ZTIN4Rcpp7RObjectE
Referenced from:
/Library/Frameworks/R.framework/Versions/2.16new/Resources/library/rTANDEM/libs/x
86_64/rTANDEM.so
Expected in: dynamic lookup
Error: package or namespace load failed for 'rTANDEM'
> sessionInfo()
R Under development (unstable) (2012-11-27 r61172)
Platform: x86_64-apple-darwin9.8.0/x86_64 (64-bit)
locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] data.table_1.8.6 Rcpp_0.10.1 XML_3.9-4
[4] BiocInstaller_1.9.4
loaded via a namespace (and not attached):
[1] tools_2.16.0
Here is the ouput from the machine where the package loads fine on x64 R but fails on i386:
> library(rTANDEM)
Loading required package: XML
Loading required package: Rcpp
Loading required package: data.table
data.table 1.8.6 For help type: help("data.table")
Error in dyn.load(file, DLLpath = DLLpath, ...) :
unable to load shared object
'/Library/Frameworks/R.framework/Versions/2.16new/Resources/library/rTANDEM/libs/
i386/rTANDEM.so':
dlopen(/Library/Frameworks/R.framework/Versions/2.16new/Resources/library/rTANDEM
/libs/i386/rTANDEM.so, 6): Symbol not found: _XML_GetErrorCode
Referenced from:
/Library/Frameworks/R.framework/Versions/2.16new/Resources/library/rTANDEM/libs/i
386/rTANDEM.so
Expected in: flat namespace
in
/Library/Frameworks/R.framework/Versions/2.16new/Resources/library/rTANDEM/libs/i
386/rTANDEM.so
Error: package or namespace load failed for 'rTANDEM'
I am left clueless by this. As anyone faced a similar issue?
Thank you very much for your help!
Frederic
More information about the R-SIG-Mac
mailing list