web-dev-qa-db-fra.com

brew install clang-omp ne fonctionne pas

J'ai besoin de compiler un code C++ avec OpenMP sur mon Mac. Malheureusement, la version par défaut de clang installée sur le Mac (703.0.31) ne prend pas en charge OpenMP. Par conséquent, j'essaie d'installer le paquet clang-omp avec brew (par exemple, en suivant le guide this ). Le problème est que brew ne peut trouver ni le libiomp, ni le paquet 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.

Je me demande si le clang-omp est toujours fourni par brew. Ou est-ce que je fais quelque chose de mal? Des idées?

Edit: Si je fais une recherche de bière, j'obtiens ce qui suit:

$ brew search clang
clang-format           emacs-clang-complete-async
Caskroom/cask/openclonk-c54d917-darwin-AMD64-clang

Ainsi, aucune preuve de clang-omp. Est-il possible que je doive changer de référentiel ou quelque chose comme ça?

22
mtazzari

Vous pouvez installer llvm en utilisant brew car il inclut désormais openmp.

brew install llvm

Vous pouvez créer un lien symbolique si vous le souhaitez

ln -s /usr/local/opt/llvm/bin/clang /usr/local/bin/clang-omp

Mon makefile ressemble à ceci

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)
31
slek120

Installer une formule supprimée

brew install homebrew/boneyard/clamp-omp

OR

brew tap homebrew/boneyard
brew install clang-omp

Référence: https://superuser.com/questions/1110414/install-a-deleted-homebrew-formulae/1110934#1110934

Ensuite, vous devez définir l'environnement:

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
11
Microos

clang-omp a été boneyarded . Voir ce commit: https://github.com/Homebrew/homebrew-core/commit/c57e3077 :

clang-omp: migrer vers boneyard

La fonctionnalité est désormais disponible dans le cadre de LLVM en Homebrew. Il suffit donc d'installer llvm

8
HenryZhao

OpenMP a été officiellement inclus dans le brassage (avant la méthode, installez llvm ou clang-omp obsolète).

brew install libomp
0
冯剑龙