R.app doesn't respect DYLD_FALLBACK_LIBRARY_PATH
Hi,
On Thu, Aug 8, 2013 at 1:42 PM, 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?
I believe this is due to the phenomenon explained here: http://stackoverflow.com/questions/135688/setting-environment-variables-in-os-x Look for the answer that starts with "Up to and including Lion" Also you'll find a link to a free preference pane you can install that lets you handle these things with a GUI (pref pane) -- I've never used it, but you can find it here: http://diaryproducts.net/EnvPane https://github.com/hschmidt/EnvPane You could also try to manually set the environment variable in your working R session, via: R> Sys.setenv(DYLD_FALLBACK_LIBRARY_PATH="/Library/Frameworks/R.framework/Resources/lib") not sure if that'll work, but easy enough to try before. Still -- it's possible that DYLD vars won't work in this way. See this: http://support.apple.com/kb/TS4267 Sorry -- no concrete answers here, but hopefully these things will help you find a workable solution. -steve
Steve Lianoglou Computational Biologist Bioinformatics and Computational Biology Genentech