I need to compile a C++ code with OpenMP on my Mac. Unfortunately the default version of clang installed on the Mac (703.0.31) does not support OpenMP. Therefore, I am tryin
OpenMP was officially included in the brew (before the method, either install llvm, or outdated clang-omp).
brew install libomp
clang-omp has been boneyarded. See this commit: https://github.com/Homebrew/homebrew-core/commit/c57e30773:
clang-omp: migrate to boneyard
Functionality is now available as part of LLVM in Homebrew. So just install llvm
Install a deleted formula
brew install homebrew/boneyard/clamp-omp
OR
brew tap homebrew/boneyard
brew install clang-omp
Reference: https://superuser.com/questions/1110414/install-a-deleted-homebrew-formulae/1110934#1110934
Then you need to set the environment:
export C_INCLUDE_PATH=/usr/local/Cellar/libiomp/20150401/include/libiomp:$C_INCLUDE_PATH
export CPLUS_INCLUDE_PATH=/usr/local/Cellar/libiomp/!date!/include/libiomp:$CPLUS_INCLUDE_PATH
export LIBRARY_PATH=/usr/local/Cellar/libiomp/!date!/lib:$LIBRARY_PATH
You can install llvm using brew since it now includes openmp.
brew install llvm
You can make a symlink if you want
ln -s /usr/local/opt/llvm/bin/clang /usr/local/bin/clang-omp
My makefile looks like this
CPP = /usr/local/opt/llvm/bin/clang
CPPFLAGS = -I/usr/local/opt/llvm/include -fopenmp
LDFLAGS = -L/usr/local/opt/llvm/lib
example: example.c
$(CPP) $(CPPFLAGS) $^ -o $@ $(LDFLAGS)