6

我在使用 cmake / gcc / Linux 时遇到问题。

无论我尝试什么,我都无法摆脱链接器行上的 CMAKE_CXX_FLAGS 。在链接模式下调用 g++ 时,CMake 会不断传递它们。

我的 CMAKE_CXX_FLAGS 中有 -fopenmp 并且它不能出现在链接行上,因此 g++ 不会链接到 gomp(我使用的是英特尔的 iomp5)。

编辑:我尝试了以下 CMakeLists.txt 的开头,没有帮助:

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

谢谢

4

1 回答 1

6

原来

add_compile_options("-fopenmp")

避免将这些选项添加到链接器。它不能解决出现在链接器行中的 CMAKE_CXX_FLAGS 的一般问题,但它解决了我遇到的直接问题。

于 2017-11-30T21:45:56.007 回答