MacでOpenMPを使用してC++コードをコンパイルする必要があります。残念ながら、Macにインストールされているclangのデフォルトバージョン(703.0.31)はOpenMPをサポートしていません。したがって、私はbrewでclang-ompパッケージをインストールしようとしています(たとえば、次の this ガイド)。問題は、brewがlibiompもclang-ompパッケージも見つけられないことです。
$ brew install clang-omp
Error: No available formula with the name "clang-omp"
==> Searching for similarly named formulae...
Error: No similarly named formulae found.
==> Searching taps...
Error: No formulae found in taps.
私はclang-ompがまだbrewによって提供されているのだろうかと考えています。それとも私は何か間違ったことをしていますか?何か案は?
編集:醸造検索を行うと、次のようになります:
$ brew search clang
clang-format emacs-clang-complete-async
Caskroom/cask/openclonk-c54d917-darwin-AMD64-clang
したがって、clang-ompの証拠はありません。リポジトリなどを変更する必要はありますか?
Llvmにはopenmpが含まれているため、brewを使用してllvmをインストールできます。
brew install llvm
必要に応じてシンボリックリンクを作成できます
ln -s /usr/local/opt/llvm/bin/clang /usr/local/bin/clang-omp
私のメイクファイルは次のようになります
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)
削除された数式をインストールする
brew install homebrew/boneyard/clamp-omp
OR
brew tap homebrew/boneyard
brew install clang-omp
参照: https://superuser.com/questions/1110414/install-a-deleted-homebrew-formulae/1110934#1110934
次に、環境を設定する必要があります。
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
clang-ompはboneyardedでした。このコミットを参照してください: https://github.com/Homebrew/homebrew-core/commit/c57e3077 :
clang-omp:ボーンヤードに移行します
HomebrewのLLVMの一部として機能が利用可能になりました。 だからllvmをインストールするだけです
OpenMPは公式にbrewに含まれていました(メソッドの前に、llvmをインストールするか、古いclang-ompをインストールしました)。
brew install libomp