自学内容网 自学内容网

cmake--set_target_properties

作用

设置某个指定的目标(文件,)的某些属性;

可以设置的属性

设置版本属性

cmake_minimum_required(VERSION 3.10)

project(test_set_target_properties)

add_library(mylib SHARED src/test.cpp)
set_target_properties(mylib PROPERTIES VERSION 1.0.1)

库的属性:

IMPOERTED_LOCATION:指定库的加载路径;

INTERFACE_INCLUDE_DIRECTORIES:指定这个库所对应的头文件路径;

#定义一个未知类型的外部库,相当于外部某个库的一个提前定义的对象,后面会用于存放外部库的信息  
add_library(camera_lib::calibration UNKNOWN IMPORTED)
#设置外部库的库的加载路径,和库对应的头文件的路径
set_target_properties(
    camera::calibration
    PROPERTIES IMPORTED_LOCATION "${CAMERA_CALI_LIB}"
               INTERFACE_INCLUDE_DIRECTORIES "${CAMERA_INC_DIR}")

在外部find_package()之后,需要使用这个库的时候,只需要链接这个库即可:

target_link_libraries(exec PUBLIC camera_lib::calibration)
#这种方式就会头文件和库文件的加载路径就都会被找到了

教程


原文地址:https://blog.csdn.net/m0_60274660/article/details/142387230

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!