cmake_minimum_required(VERSION 2.8.3) project(rf2o_laser_odometry) set (CMAKE_CXX_STANDARD 14) # Require C++14 ## Find catkin macros and libraries ## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz) ## is used, also find other catkin packages find_package(catkin REQUIRED COMPONENTS roscpp rospy nav_msgs sensor_msgs std_msgs tf cmake_modules ) ## System dependencies are found with CMake's conventions find_package(Boost REQUIRED COMPONENTS system) find_package(Eigen3 REQUIRED) ################################### ## catkin specific configuration ## ################################### ## The catkin_package macro generates cmake config files for your package ## Declare things to be passed to dependent projects ## INCLUDE_DIRS: uncomment this if you package contains header files ## LIBRARIES: libraries you create in this project that dependent projects also need ## CATKIN_DEPENDS: catkin_packages dependent projects also need ## DEPENDS: system dependencies of this project that dependent projects also need catkin_package( INCLUDE_DIRS include ${EIGEN3_INCLUDE_DIRS} LIBRARIES ${PROJECT_NAME} CATKIN_DEPENDS nav_msgs roscpp sensor_msgs std_msgs tf DEPENDS #Eigen3 ) ## Specify additional locations of header files ## Your package locations should be listed before other locations include_directories(include) include_directories( SYSTEM ${catkin_INCLUDE_DIRS} ${Boost_INCLUDE_DIRS} ${EIGEN3_INCLUDE_DIRS} ) ## Declare a cpp library add_library(${PROJECT_NAME} src/CLaserOdometry2D.cpp) target_link_libraries(${PROJECT_NAME} ${catkin_LIBRARIES}) ## Declare a cpp executable add_executable(rf2o_laser_odometry_node src/CLaserOdometry2DNode.cpp) target_link_libraries(rf2o_laser_odometry_node ${PROJECT_NAME} ${catkin_LIBRARIES})