Merge pull request #8 from elephantrobotics/humble-dev

fix(unitree_lidar_ros2): update CMakeLists.txt
This commit is contained in:
X-lanni
2026-01-14 17:15:53 +08:00
committed by GitHub
+27 -18
View File
@@ -1,12 +1,13 @@
cmake_minimum_required(VERSION 3.5) cmake_minimum_required(VERSION 3.5)
cmake_policy(SET CMP0074 NEW)
project(unitree_lidar_ros2) project(unitree_lidar_ros2)
# Default to C99
if(NOT CMAKE_C_STANDARD) if(NOT CMAKE_C_STANDARD)
set(CMAKE_C_STANDARD 99) set(CMAKE_C_STANDARD 99)
endif() endif()
# Default to C++14
if(NOT CMAKE_CXX_STANDARD) if(NOT CMAKE_CXX_STANDARD)
set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD 17)
endif() endif()
@@ -24,42 +25,51 @@ find_package(PCL REQUIRED)
find_package(tf2_ros REQUIRED) find_package(tf2_ros REQUIRED)
find_package(sensor_msgs REQUIRED) find_package(sensor_msgs REQUIRED)
# SDK include path
include_directories( include_directories(
${PCL_INCLUDE_DIRS}
include include
../unitree_lidar_sdk/include /usr/local/include/unitree_lidar_sdk
) ${PCL_INCLUDE_DIRS}
link_directories(
${PCL_LIBRARY_DIRS}
../unitree_lidar_sdk/lib/${CMAKE_SYSTEM_PROCESSOR}
) )
add_definitions(${PCL_DEFINITIONS}) add_definitions(${PCL_DEFINITIONS})
add_executable(unitree_lidar_ros2_node src/unitree_lidar_ros2_node.cpp) # SDK library path by architecture
if(CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64")
set(UNITREE_LIDAR_SDK_LIB
/usr/local/lib/unitree_lidar_sdk/aarch64/libunilidar_sdk2.a
)
else()
set(UNITREE_LIDAR_SDK_LIB
/usr/local/lib/unitree_lidar_sdk/x86_64/libunilidar_sdk2.a
)
endif()
target_link_libraries( unitree_lidar_ros2_node add_executable(unitree_lidar_ros2_node
${Boost_SYSTEM_LIBRARY} src/unitree_lidar_ros2_node.cpp
)
target_link_libraries(
unitree_lidar_ros2_node
${UNITREE_LIDAR_SDK_LIB}
${PCL_LIBRARIES} ${PCL_LIBRARIES}
unilidar_sdk2
) )
ament_target_dependencies( ament_target_dependencies(
unitree_lidar_ros2_node unitree_lidar_ros2_node
rclcpp std_msgs rclcpp
std_msgs
sensor_msgs sensor_msgs
geometry_msgs geometry_msgs
tf2_ros tf2_ros
pcl_conversions pcl_conversions
) )
install(TARGETS install(TARGETS
unitree_lidar_ros2_node unitree_lidar_ros2_node
DESTINATION lib/${PROJECT_NAME} DESTINATION lib/${PROJECT_NAME}
) )
# install rviz file and launch file
install(DIRECTORY launch/ install(DIRECTORY launch/
DESTINATION share/${PROJECT_NAME}/launch DESTINATION share/${PROJECT_NAME}/launch
) )
@@ -68,7 +78,6 @@ install(DIRECTORY rviz/
DESTINATION share/${PROJECT_NAME}/rviz DESTINATION share/${PROJECT_NAME}/rviz
) )
# install config files if they exist
if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/config") if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/config")
install(DIRECTORY config/ install(DIRECTORY config/
DESTINATION share/${PROJECT_NAME}/config DESTINATION share/${PROJECT_NAME}/config