RGLab / Rtsne.multicore

R wrapper for Multicore t-SNE
Other
29 stars 3 forks source link

6): Symbol not found: ___kmpc_barrier- Openmp issue #2

Open ramay opened 7 years ago

ramay commented 7 years ago

Hi, I am trying to install Rtsne.multicore on mac os Sierra . There are some problems while installing it. I know this is not a package problem but I am hoping you might have some insight into it. I installed clang compiler with openmp support but I am still getting this error when I try to install the package

devtools::install_github("RGLab/Rtsne.multicore")

The error is as follows: Error in dyn.load(file, DLLpath = DLLpath, ...) : unable to load shared object '/usr/local/lib/R/3.3/site-library/Rtsne.multicore/libs/Rtsne.multicore.so': dlopen(/usr/local/lib/R/3.3/site-library/Rtsne.multicore/libs/Rtsne.multicore.so, 6): Symbol not found**: ___kmpc_barrier** Referenced from: /usr/local/lib/R/3.3/site-library/Rtsne.multicore/libs/Rtsne.multicore.so Expected in: flat namespace in /usr/local/lib/R/3.3/site-library/Rtsne.multicore/libs/Rtsne.multicore.so Error: loading failed Execution halted

A solution at overflow gives some hints: http://stackoverflow.com/questions/13715979/parallel-program-giving-error-undefined-reference-to-kmpc-ok-to-fork

Any suggestion is welcome! Thanks! Hena

mikejiang commented 7 years ago

Since your compilation is ok I assume you have latest clang with openmp supported. The problem seems that openmp library can't be located at runtime, which means you may need to provide a path to shared OpenMP library,e.g. add this line to you ~/.Rprofile

export DYLD_LIBRARY_PATH=<Your OpenMP library path>:$DYLD_LIBRARY_PATH