なぜ Clang で OpenMP が見つからないのか#
Clang を C++ コンパイラとして使用する際、CMAKE は OpenMP を見つけることができません。以下のようになります:
[cmake] -- Could NOT find OpenMP_CXX (missing: OpenMP_CXX_FLAGS OpenMP_CXX_LIB_NAMES)
解決策#
- OpenMP を使用する際は、Clang に
-fopenmp=libomp
を使用する必要があります。 - C++ コンパイラを g++ に切り替えます。
cmake .. -DCMAKE_C_COMPILER=which gcc -DCMAKE_CXX_COMPILER=which g++