pcl_wrapper/CMakeLists.txt

37 lines
1.1 KiB
CMake
Raw Permalink Normal View History

2025-04-12 00:02:19 +08:00
cmake_minimum_required(VERSION 3.10)
project(pcl_wrapper)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
2025-04-12 00:08:42 +08:00
# 获取 libomp 安装路径
2025-04-12 00:02:19 +08:00
execute_process(
COMMAND brew --prefix libomp
OUTPUT_VARIABLE LIBOMP_PREFIX
OUTPUT_STRIP_TRAILING_WHITESPACE
)
2025-04-12 00:08:42 +08:00
# 查找 PCL
2025-04-12 00:02:19 +08:00
find_package(PCL REQUIRED)
2025-04-12 00:08:42 +08:00
# 添加 include 路径
2025-04-12 16:40:31 +08:00
include_directories(include)
include_directories(include/pcl_wrapper)
2025-04-12 00:08:42 +08:00
include_directories(${PCL_INCLUDE_DIRS} "${LIBOMP_PREFIX}/include")
2025-04-12 00:02:19 +08:00
add_definitions(${PCL_DEFINITIONS})
2025-04-12 00:08:42 +08:00
# 添加库
2025-04-12 16:40:31 +08:00
add_library(pclwrapper SHARED wrapper.cpp
include/pcl_wrapper/pcl_wrapper_api.hpp
include/pcl_wrapper/cloud_handle.hpp
include/pcl_wrapper/voxel_filter.hpp
include/pcl_wrapper/io.hpp
include/pcl_wrapper/kdtree.hpp
2025-04-12 16:40:31 +08:00
)
2025-04-12 00:02:19 +08:00
2025-04-12 00:08:42 +08:00
# 指定 OpenMP 和 PCL 库
target_compile_options(pclwrapper PRIVATE -Xpreprocessor -fopenmp)
target_link_libraries(pclwrapper PRIVATE ${PCL_LIBRARIES} "${LIBOMP_PREFIX}/lib/libomp.dylib")
target_include_directories(pclwrapper PRIVATE "${LIBOMP_PREFIX}/include")