[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 21:15:11 CET 2012
On Dec 3, 2012, at 2:58 PM, Dan Tenenbaum <dtenenba at fhcrc.org> wrote:
> On Mon, Dec 3, 2012 at 11:55 AM, Davor Cubranic <cubranic at stat.ubc.ca> wrote:
>> Is rTandem built with the same version of Rcpp that is now installed (0.10.1)? The API changed a fair bit over the past few weeks.
>
>
> Yes, in fact I just built Rcpp from source immediately before building
> rTANDEM. I get the same results after installing the Rcpp binary from
> CRAN. In both cases, I build and then attempt to load rTANDEM with the
> exact same version of Rcpp.
>
CRAN version of Rcpp has both x86_64 and i386 libraries - unlike yours. May I suggest someone with the necessary knowledge respond to my initial e-mail before someone gets killed running of the wrong cliff? ;)
Cheers,
Simon
> Dan
>
>
>>
>> Davor
>>
>> On 2012-12-03, at 11:52 AM, Dan Tenenbaum wrote:
>>
>>> On Mon, Dec 3, 2012 at 11:13 AM, Davor Cubranic <cubranic at stat.ubc.ca> wrote:
>>>> Looks like you might not have the 64-bit version of the Rcpp dynamic library installed on the first machine. On the second, check if you have the 32-bit version of both XML and expat's dynamic libraries.
>>>
>>>
>>> Thanks. I'm working with Frederic on this.
>>> On the first machine, both the 32 and 64 bit versions are Rcpp are
>>> installed (I can library(Rcpp) from both R --arch i386 and R --arch
>>> x86_64), and the installed Rcpp has these files present:
>>>
>>> pwd
>>> /Library/Frameworks/R.framework/Versions/Current/Resources/library/Rcpp
>>> PETTY:Rcpp biocbuild$ ls -lR libs
>>> total 0
>>> drwxr-xr-x 3 biocbuild admin 102 Dec 3 11:40 i386
>>> drwxr-xr-x 3 biocbuild admin 102 Dec 3 11:40 x86_64
>>>
>>> libs/i386:
>>> total 1216
>>> -rwxr-xr-x 1 biocbuild admin 619064 Dec 3 11:40 Rcpp.so
>>>
>>> libs/x86_64:
>>> total 1280
>>> -rwxr-xr-x 1 biocbuild admin 651920 Dec 3 11:40 Rcpp.so
>>> PETTY:Rcpp biocbuild$ ls -lR lib
>>> total 0
>>> drwxr-xr-x 4 biocbuild admin 136 Dec 3 11:40 i386
>>>
>>> lib/i386:
>>> total 11336
>>> -rw-r--r-- 1 biocbuild admin 5177484 Dec 3 11:40 libRcpp.a
>>> -rwxr-xr-x 1 biocbuild admin 619064 Dec 3 11:40 libRcpp.dylib
>>>
>>> After building rTANDEM against this Rcpp, I then get the same error
>>> Frederic reports in this thread when trying to library(rTANDEM) on the
>>> x86_64 architecture. Here it is again with sessionInfo():
>>>
>>>> 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.16/Resources/library/rTANDEM/libs/x86_64/rTANDEM.so':
>>> dlopen(/Library/Frameworks/R.framework/Versions/2.16/Resources/library/rTANDEM/libs/x86_64/rTANDEM.so,
>>> 6): Symbol not found: __ZTIN4Rcpp7RObjectE
>>> Referenced from:
>>> /Library/Frameworks/R.framework/Versions/2.16/Resources/library/rTANDEM/libs/x86_64/rTANDEM.so
>>> Expected in: dynamic lookup
>>>
>>> Error: package or namespace load failed for 'rTANDEM'
>>>> sessionInfo()
>>> R Under development (unstable) (2012-10-31 r61060)
>>> Platform: x86_64-apple-darwin9.8.0/x86_64 (64-bit)
>>>
>>> locale:
>>> [1] C
>>>
>>> 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.95-0.1
>>>>
>>>
>>> I'm not sure if Frederic wants the package source to be posted at this
>>> point. I'll let him answer that.
>>>
>>> Thanks,
>>> Dan
>>>
>>>
>>>>
>>>> Davor
>>>>
>>>>
>>>> On 2012-12-03, at 8:34 AM, Frederic Fournier 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
>>>>
>>>> _______________________________________________
>>>> R-SIG-Mac mailing list
>>>> R-SIG-Mac at r-project.org
>>>> https://stat.ethz.ch/mailman/listinfo/r-sig-mac
>>
>
> _______________________________________________
> 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