cmake_minimum_required(VERSION 3.18) project(MyYoloSdk CXX) set(CMAKE_CXX_STANDARD 17) # --- 1. find_package(JNI REQUIRED) # --- 2. find_package(OpenCV REQUIRED) # --- 3. # set(ORT_MANUAL_PATH ${CMAKE_SOURCE_DIR}/../prebuilt_libs/onnxruntime-win-x64-1.23.2) # find_path(ONNXRuntime_INCLUDE_DIRS NAMES onnxruntime_cxx_api.h HINTS ${ORT_MANUAL_PATH}/include ) # find_library(ONNXRuntime_LIBRARY NAMES onnxruntime HINTS ${ORT_MANUAL_PATH}/lib ) # if(NOT ONNXRuntime_INCLUDE_DIRS OR NOT ONNXRuntime_LIBRARY) message(FATAL_ERROR "Failed to find manual ONNX Runtime at ${ORT_MANUAL_PATH}") endif() message(STATUS "Found Manual ONNX Runtime Include: ${ONNXRuntime_INCLUDE_DIRS}") message(STATUS "Found Manual ONNX Runtime Library: ${ONNXRuntime_LIBRARY}") # --- 4. add_library(my_yolo_sdk SHARED src/YoloCore.cpp src/YoloSdk_JNI.cpp ) # --- 5. target_include_directories(my_yolo_sdk PUBLIC ${JNI_INCLUDE_DIRS} ${OpenCV_INCLUDE_DIRS} ${ONNXRuntime_INCLUDE_DIRS} # include ) target_link_libraries(my_yolo_sdk PRIVATE ${JNI_LIBRARIES} ${OpenCV_LIBS} ${ONNXRuntime_LIBRARY} # ) # --- 6. if(UNIX) set_target_properties(my_yolo_sdk PROPERTIES INSTALL_RPATH "$ORIGIN" ) endif()