# CMakeLists.txt for C909_V1_Monitor plugin cmake_minimum_required(VERSION 3.10) # 设置项目名称 project(C909_V1_Monitor_plugin) # 设置C++标准 set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) # 查找必要的包 find_package(PkgConfig REQUIRED) find_package(FastDDS REQUIRED) if(DEFINED ENV{XNCore}) set(XNCore_PATH $ENV{XNCore}) else() message(FATAL_ERROR "Environment variable XNCore is not set.") endif() include_directories(${XNCore_PATH}/include) # 创建插件库 add_library(C909_V1_Monitor SHARED C909_V1_plugin.cpp ) # 链接库 target_link_libraries(C909_V1_Monitor fastcdr fastdds OpenSSL::SSL OpenSSL::Crypto ${XNCore_PATH}/lib/libC909_V1_Interface.so ${XNCore_PATH}/lib/libXNMonitorServer.so ) target_compile_definitions(C909_V1_Monitor PRIVATE C909_V1_Monitor_LIBRARY) if (CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) set(CMAKE_INSTALL_PREFIX "${XNCore_PATH}/Configuration/C909_V1/Plugins" CACHE PATH "Install path prefix" FORCE) endif() include(GNUInstallDirs) install(TARGETS C909_V1_Monitor BUNDLE DESTINATION . LIBRARY DESTINATION . RUNTIME DESTINATION . )