📜  cmkake 设置链接器标志 (1)

📅  最后修改于: 2023-12-03 14:59:57.377000             🧑  作者: Mango

使用cmake设置链接器标志

在使用CMake构建项目时,我们经常需要设置链接器标志,以便将目标文件与其他外部库连接起来。链接器标志可以设置库文件路径、库文件名和标准库的版本等选项。本文将介绍如何使用CMake设置链接器标志。

添加库文件路径

要设置库文件路径,我们可以使用 link_directories()函数来指定路径。这个函数接受一个或多个路径,以指定库文件所在的目录。下面是一个例子:

link_directories(/usr/local/lib)
添加库文件

要添加库文件,我们可以使用 target_link_libraries()函数来指定库文件名。这个函数接受一个或多个库文件名,以指定需要连接的库文件。下面是一个例子:

target_link_libraries(my_target libfoo.a)

我们还可以使用绝对路径或相对路径指定库文件的位置。例如:

target_link_libraries(my_target ../lib/libfoo.a)
添加标准库

要添加标准库,我们可以使用 target_link_libraries()函数来指定库名。例如:

target_link_libraries(my_target pthread)

这将链接标准的 pthread 库。

设置编译选项

要设置编译选项,我们可以使用 set() 函数设置 CMAKE_C_FLAGSCMAKE_CXX_FLAGS变量。在这些变量中设置编译选项将影响编译器和链接器的操作。例如:

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")

这将添加 -Wall选项到编译器参数中。

总结

通过上述方法,我们可以使用CMake轻松设置链接器标志,以便将目标文件与其他外部库连接起来。在添加库文件路径和库文件名时,我们还可以使用绝对路径或相对路径来指定库文件的位置。最后,我们还可以使用 set() 函数来设置编译选项,以影响编译器和链接器。