zoukankan      html  css  js  c++  java
  • cmake find_package 中,include_directories,target_link_libraries 的值怎么知道?

    Sophus库为例:

    find_package(Sophus REQUIRED)

    include_directories(${Sophus_INCLUDE_DIRS})

    target_link_libraries(useSophus ${Sophus_LIBRARIES})

    我们怎么知道要连接Sophus_INCLUDE_DIRS,Sophus_LIBRARIES,而不是SOPHUS_INCLUDE_DIRS,SOPHUS_LIBRARIES或其他,其实

    find_package主要是找到.cmake文件,然后这些变量在.cmake 里面定义了,我们看Sophus/SophusConfig.cmake:

    # Sophus source dir

    set( Sophus_SOURCE_DIR "/home/xxx/slamcode/ch4/Sophus")

     

    ################################################################################

    # Sophus build dir

    set( Sophus_DIR "/home/xxx/slamcode/ch4/Sophus")

     

    ################################################################################

    set( Sophus_INCLUDE_DIR  "/home/xxx/slamcode/ch4/Sophus;/usr/include/eigen3" )

    set( Sophus_INCLUDE_DIRS  "/home/xxx/slamcode/ch4/Sophus;/usr/include/eigen3" )

     

    set( Sophus_LIBRARIES    "/home/xxx/slamcode/ch4/Sophus/libSophus.so" )

    set( Sophus_LIBRARY      "/home/xxx/slamcode/ch4/Sophus/libSophus.so" )

     

    set( Sophus_LIBRARY_DIR  "/home/xxx/slamcode/ch4/Sophus" )

    set( Sophus_LIBRARY_DIRS "/home/xxx/slamcode/ch4/Sophus" )

    然后就知道那些变量可以用了吧

  • 相关阅读:
    Django model 常用方法记录
    程序员的注意事项
    硬件天使的使用
    你是否应该成为一名全栈工程师?
    web技术
    6个处理上面代码异味的重构方法(手法)
    git 命定
    ie console报错
    apache 省略index.php访问
    myisam和innodb的区别
  • 原文地址:https://www.cnblogs.com/YouXiangLiThon/p/8644527.html
Copyright © 2011-2022 走看看