I like to use openmp in a c++ project using Xcode as IDE. Unfortunately, Apple's Clang compiler does not support openmp (see here), so I installed clang-omp. I exactly followed the instructions given on that website to use it within Xcode, but I get the error message can't exec '/usr/local/bin/clang++-omp' (No such file or directory)
. I tried to compile the simple example given on their website via terminal and I got it to work when I compile it via clang-omp++ -fopenmp file.cpp
. For me it looks like Xcode should search for /usr/local/bin/clang-omp++
(which exists in contrast to /usr/local/bin/clang++-omp
). After making a symlink as suggested in the comments I get another error message: library not found for -liomp5
. How can I fix this?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
In case anyone else is trying to get clang-omp under Xcode to work, the correct way is (following the official instructions):
- Install clang-omp using homebrew:
brew install clang-omp
- Create a new Xcode project
- Add a new user-defined setting CC with the value
/usr/local/bin/clang-omp
under the project's build settings - Add
-fopenmp
to Other C Flags under the project's build settings - Add
/usr/local/include
to Header Search Paths under the project's build settings - Add
/usr/local/lib
to Library Search Paths under the project's build settings - Set Enable Modules (C and Objective-C) to
No
under the project's build settings - Add
/usr/local/lib/libiomp5.dylib
to Link Binary With Libraries under the project's build phases - Make a symbolic link via
sudo ln -s /usr/local/bin/clang-omp++ /usr/local/bin/clang++-omp
using the terminal - Use
#include <libiomp/omp.h>
to be able to use openmp in your project
回答2:
OpemMP runtimes are usually not delivered with clang, you can download and install from: https://www.openmprtl.org