在适当的时候,CMake add_compile_options会影响链接器选项吗?

时间:2015-04-17 15:03:33

标签: c++ gcc cmake

某些编译器选项实际上可能需要额外的 link 选项才能真正有效。例如,要启用GCC's Link Time Optimization,必须在编译命令链接命令中传递-flto选项。

有一个漂亮的builtin cmake command用于添加编译选项,但据我所知,没有相应的链接选项命令。即使有,当我们使用的编译选项暗示它们时,需要明确指定它们会非常烦人。

add_compile_options(-flto)-flto添加到链接命令中也是如此?如果没有,我是否需要直接set(LINK_FLAGS ....

2 个答案:

答案 0 :(得分:4)

add_compile_optionstarget_compile_options传递给链接器。

您可以(ab)使用target_link_libraries for this purpose

  

以 - ,但不是-l或-framework开头的项目名称被视为   链接器标志。

答案 1 :(得分:1)

在cmake 3.13及更高版本中,可以使用add_link_options()完成此操作。