2017-11-30 6 views
0

cmake/gcc/Linuxに問題があります。CMake - リンカのコマンドラインでCMAKE_CXX_FLAGSを避ける​​方法

私が試しても、リンカ行でCMAKE_CXX_FLAGSを取り除くことはできません。 CMakeはリンクモードでg ++を呼び出すときにそれらを渡し続けます。

私はCMAKE_CXX_FLAGSに-fopenmpを持っており、g ++がgompにリンクしていないように(つまり、Intelのiomp5を使用しています)、リンク行に存在してはいけません。

編集:私は、CMakeLists.txtの先頭次のことを試してみました助けにはならなかった。

set(CMAKE_CXX_LINK_EXECUTABLE 
    "<CMAKE_CXX_COMPILER> <FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>") 

おかげ

+0

'CMAKE_CXX_LINK_EXECUTABLE'を再定義すると役立ちます。何を試してみましたか([mcve]の形で)表示してください。また、同様の質問に対して[その答えで]提案されているように、コンパイラのみのオプションには 'COMPILE_FLAGS' **プロパティ**を使うことができます。 – Tsyvarev

答えて

0

add_compile_options("-fopenmp") 

がリンカにこれらのオプションを追加する回避判明。 リンカ行に現れるCMAKE_CXX_FLAGSの一般的な問題を解決することはできませんが、私が直面する問題は解決します。

関連する問題