cmake_minimum_required(VERSION 3.10) project(costmap_2d) set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) # Dependencies find_package(Eigen3 REQUIRED) # Include directories include_directories( include ${EIGEN3_INCLUDE_DIR} ) # Library source files set(COSTMAP_SOURCES src/costmap_2d.cpp # src/layer.cpp src/layered_costmap.cpp # src/costmap_layer.cpp # src/static_layer.cpp # src/obstacle_layer.cpp # src/inflation_layer.cpp # src/observation_buffer.cpp # src/footprint.cpp ) # Create library add_library(${PROJECT_NAME} SHARED ${COSTMAP_SOURCES}) target_link_libraries(${PROJECT_NAME} Eigen3::Eigen) # Install install(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION lib ARCHIVE DESTINATION lib ) install(DIRECTORY include/${PROJECT_NAME}/ DESTINATION include/${PROJECT_NAME} )