[R-SIG-Mac] CRAN build of R linking to /usr/local/clang4/

Gábor Csárdi c@@rdi@g@bor @ending from gm@il@com
Thu Oct 11 00:12:05 CEST 2018


https://cran.r-project.org/bin/macosx/tools/ suggests installing a
special clang6 build. OTOH, the R binary links to a library that comes
with CRAN's clang4 build:

❯ otool -L  /Library/Frameworks/R.framework/Resources/bin/exec/R
/Library/Frameworks/R.framework/Resources/bin/exec/R:
/Library/Frameworks/R.framework/Versions/3.5/Resources/lib/libR.dylib
(compatibility version 3.5.0, current version 3.5.1)
/Library/Frameworks/R.framework/Versions/3.5/Resources/lib/libRblas.dylib
(compatibility version 0.0.0, current version 0.0.0)
/usr/local/clang4/lib/libomp.dylib (compatibility version 5.0.0,
current version 5.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
version 1226.10.1)

Notice '/usr/local/clang4/lib/libomp.dylib' above. R seems to run
happily without this file, though, until you start it with lldb:

❯ R -d  lldb
(lldb) target create "/Library/Frameworks/R.framework/Resources/bin/exec/R"
Current executable set to
'/Library/Frameworks/R.framework/Resources/bin/exec/R' (x86_64).
(lldb) run
Process 74239 launched:
'/Library/Frameworks/R.framework/Resources/bin/exec/R' (x86_64)
dyld: Library not loaded: /usr/local/clang4/lib/libomp.dylib
  Referenced from: /Library/Frameworks/R.framework/Resources/bin/exec/R
  Reason: image not found
Process 74239 stopped
* thread #1, stop reason = signal SIGABRT
    frame #0: 0x000000010002c9ee dyld`__abort_with_payload + 10
dyld`__abort_with_payload:
->  0x10002c9ee <+10>: jae    0x10002c9f8               ; <+20>
    0x10002c9f0 <+12>: movq   %rax, %rdi
    0x10002c9f3 <+15>: jmp    0x10002c300               ; cerror_nocancel
    0x10002c9f8 <+20>: retq

After clang4 is installed from http://r.research.att.com/libs/
everything is fine.

Is linking to this library intentional? If yes, then maybe the web
could be updated to suggest installing clang6 and clang4?

Thanks,
Gabor



More information about the R-SIG-Mac mailing list