• 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

【机器人学】机器人开源项目KDL源码学习:(7)examples中的CMakeList.txt文件解读

人工智能 gpeng832 2562次浏览 0个评论

通过学习KDL开源项目的代码可以学习CMake构建程序的知识,现简单介绍一下orocos_kinematics_dynamics-master\orocos_kinematics_dynamics-master\orocos_kdl\examples\CMakeList.txt文件的指令。  

IF(ENABLE_EXAMPLES)
INCLUDE_DIRECTORIES(${PROJ_SOURCE_DIR}/src ${PROJ_SOURCE_DIR}/models ${PROJ_BINARY_DIR}/src)
add_executable(geometry geometry.cpp )
TARGET_LINK_LIBRARIES(geometry orocos-kdl)
add_executable(trajectory_example trajectory_example.cpp )
TARGET_LINK_LIBRARIES(trajectory_example orocos-kdl)
add_executable(chainiksolverpos_lma_demo chainiksolverpos_lma_demo.cpp )
TARGET_LINK_LIBRARIES(chainiksolverpos_lma_demo orocos-kdl orocos-kdl-models)
ENDIF(ENABLE_EXAMPLES)

  逐句解读:  

IF(ENABLE_EXAMPLES)

  判断是表达式ENABLE_EXAMPLES是否为ON,默认是OFF,要想该更改值需要在orocos_kdl/CMakeList.txt文件中将OPTION(ENABLE_EXAMPLES OFF “Enablebuilding of examples”)行中的OFF改成ON。  

INCLUDE_DIRECTORIES(${PROJ_SOURCE_DIR}/src${PROJ_SOURCE_DIR}/models ${PROJ_BINARY_DIR}/src)

  为构建树添加包含路径,如果没有这一句,那么在make以后,会显示chainiksolverpos_lma_demo.cpp中的第一句include “frame_io.hpp”编译无法通过,因为没有指定frame_io.hpp的路径。  

add_executable(geometrygeometry.cpp )
TARGET_LINK_LIBRARIES(geometryorocos-kdl)

  将源文件生成一个可执行文件,将静态链接库orocos-kdl连接到目标geometry上,如果没有target_link_libraries,那么src中的源文件的函数就不能被调用。  

add_executable(trajectory_exampletrajectory_example.cpp )

TARGET_LINK_LIBRARIES(trajectory_exampleorocos-kdl)

add_executable(chainiksolverpos_lma_demochainiksolverpos_lma_demo.cpp )

TARGET_LINK_LIBRARIES(chainiksolverpos_lma_demoorocos-kdl orocos-kdl-models)

  这四行同理。  

ENDIF(ENABLE_EXAMPLES) 

  第一行IF的结束语句。


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明【机器人学】机器人开源项目KDL源码学习:(7)examples中的CMakeList.txt文件解读
喜欢 (0)

您必须 登录 才能发表评论!

加载中……