[R-SIG-Mac] Problem loading a package libraries (Error in dyn.load) on mac environments

Simon Urbanek simon.urbanek at r-project.org
Mon Dec 3 20:11:55 CET 2012


Frederic,

do you have the source somewhere so we can test it? It seems like you are not linking against all libraries you need. You won't see this at link time, because symbols are only resolved at run time. Make sure you have all necessary libraries in both 64-bit and 32-bit. Are you using any 3rd party binaries like MacPorts, Fink, Homebrew or similar? They may cause problems...

Cheers,
Simon


On Dec 3, 2012, at 11:34 AM, Frederic Fournier <frederic.bioinfo at gmail.com> wrote:

> 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
> 
> _______________________________________________
> R-SIG-Mac mailing list
> R-SIG-Mac at r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-sig-mac
> 
> 



More information about the R-SIG-Mac mailing list