[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