cmake_minimum_required(VERSION 3.24) project(patchwork) add_compile_options(-std=c++17) set(CMAKE_BUILD_TYPE "Release") set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_EXTENSIONS OFF) find_package(ament_cmake REQUIRED) find_package(nav_msgs REQUIRED) find_package(rcutils REQUIRED) find_package(rclcpp REQUIRED) find_package(rclcpp_components REQUIRED) find_package(geometry_msgs REQUIRED) find_package(std_msgs REQUIRED) find_package(sensor_msgs REQUIRED) find_package(visualization_msgs REQUIRED) find_package(pcl_conversions REQUIRED) find_package(PCL REQUIRED) find_package(tf2_ros REQUIRED) find_package(tf2_eigen REQUIRED) find_package(tf2_geometry_msgs REQUIRED) find_package(tf2_sensor_msgs REQUIRED) find_package(TBB REQUIRED) include_directories( include src ${catkin_INCLUDE_DIRS} ${PCL_INCLUDE_DIRS} ) link_directories(${PCL_LIBRARY_DIRS}) add_definitions(${PCL_DEFINITIONS}) ################################################################################ add_executable(run_patchwork src/main.cpp) ament_target_dependencies(run_patchwork rclcpp tf2_ros sensor_msgs nav_msgs visualization_msgs pcl_conversions PCL ) target_link_libraries(run_patchwork ${PCL_LIBRARIES} TBB::tbb stdc++fs # To use std::filesystem ) install(TARGETS run_patchwork LIBRARY DESTINATION lib RUNTIME DESTINATION lib/${PROJECT_NAME} ) install(DIRECTORY launch config rviz DESTINATION share/${PROJECT_NAME} ) ament_package()