[R-SIG-Mac] R.app doesn't respect DYLD_FALLBACK_LIBRARY_PATH
Berend Hasselman
bhh at xs4all.nl
Fri Aug 9 09:49:04 CEST 2013
On 08-08-2013, at 22:42, Tom Schoenemann <toms at indiana.edu> wrote:
> Hello,
>
> I am trying to get a custom R package (from another group) to run on my system. If I call it from the command line r, it works fine. If I call it from R.app, it complains with:
>
> Error in dyn.load(file, DLLpath = DLLpath, ...) :
> unable to load shared object '/Library/Frameworks/R.framework/Versions/3.0/Resources/library/ANTsR/libs/libRantsRegistration.so':
> dlopen(/Library/Frameworks/R.framework/Versions/3.0/Resources/library/ANTsR/libs/libRantsRegistration.so, 6): Library not loaded: libitkdouble-conversion-4.5.1.dylib
> Referenced from: /Applications/image-processing/ANTsR/src/ANTS/ANTS-build/lib/libl_antsRegistration.dylib
> Reason: image not found
> Error: package or namespace load failed for ‘ANTsR’
>
> (ANTsR is the package I'm trying to get working)
>
> I CAN get it to work by doing this on the command line first:
>
> export DYLD_FALLBACK_LIBRARY_PATH=/Library/Frameworks/R.framework/Resources/lib
>
> and then also opening the R.app from the command line:
>
> open /Applications/R.app/
>
> However, I can't seem to get R.app to know about
> export DYLD_FALLBACK_LIBRARY_PATH=/Library/Frameworks/R.framework/Resources/lib
> unless I do it this way.
>
> So my questions are:
>
> 1) how can I get R.app to know about the DYLD_FALLBACK_LIBRARY_PATH? I tried putting it into my .Renviron file, but it doesn't work (maybe the syntax is supposed to be different?)
>
> 2) why does r on the command line know about dynamic libraries, but R.app does not?? This seems like a bug, but maybe there is a good reason for it?
Something similar was reported earlier this year.
See https://stat.ethz.ch/pipermail/r-sig-mac/2013-April/010057.html
In that case the way the package was built was incorrectly.
From the error message it appears that libitkdouble-conversion-4.5.1.dylib is not found.
So if it can be found by commandline R with DYLD_FALLBACK_LIBRARY set to /Library/Frameworks/R.framework/Resources/lib
the libitkdouble-*.dylib must have been put in that directory.
Whatever for? That's an R directory.
Why did the install or build of /Applications/image-processing/ANTsR/src/ANTS/ANTS-build/lib/libl_antsRegistration.dylib put something in the R lib directory?
Berend
More information about the R-SIG-Mac
mailing list