当前位置:首页makefile|cmake > 正文

cmake中set_target_properties常见属性以及获取target属性

作者:野牛程序员:2024-01-03 16:12:31makefile|cmake阅读 2712

set_target_properties 函数用于设置目标(target)的属性。以下是一些常见的属性及其用法:

  1. CXX_STANDARD / C_STANDARD

    • 用法:set_target_properties(target_name PROPERTIES CXX_STANDARD 11)

    • 描述:设置C++标准或C标准的版本。

  2. CXX_EXTENSIONS / C_EXTENSIONS

    • 用法:set_target_properties(target_name PROPERTIES CXX_EXTENSIONS OFF)

    • 描述:禁用C++标准库的扩展。

  3. OUTPUT_NAME

    • 用法:set_target_properties(target_name PROPERTIES OUTPUT_NAME "my_executable")

    • 描述:设置生成的可执行文件的名称。

  4. RUNTIME_OUTPUT_DIRECTORY

    • 用法:set_target_properties(target_name PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin")

    • 描述:设置运行时文件的输出目录。

  5. LIBRARY_OUTPUT_DIRECTORY

    • 用法:set_target_properties(target_name PROPERTIES LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib")

    • 描述:设置库文件的输出目录。

  6. ARCHIVE_OUTPUT_DIRECTORY

    • 用法:set_target_properties(target_name PROPERTIES ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib")

    • 描述:设置存档文件的输出目录。

  7. INCLUDE_DIRECTORIES

    • 用法:set_target_properties(target_name PROPERTIES INCLUDE_DIRECTORIES "${CMAKE_SOURCE_DIR}/include")

    • 描述:设置目标的包含目录。

  8. COMPILE_DEFINITIONS

    • 用法:set_target_properties(target_name PROPERTIES COMPILE_DEFINITIONS MY_DEFINITION)

    • 描述:为目标设置编译时宏定义。

获取目标属性的方法通常是使用 get_target_property 函数。例如:

get_target_property(result_var target_name PROPERTY_NAME)

其中,result_var 是存储获取到的属性值的变量,target_name 是目标的名称,而 PROPERTY_NAME 则是要获取的属性的名称。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击