#指定cmake最低版本要求,这是必须的 cmake_minimum_required(VERSION 3.20) # 设置指定的C++编译器版本是必须的,如果不设置,或者为OFF,则指定版本不可用时,会使用上一版本。 set(CMAKE_CXX_STANDARD_REQUIRED ON) # 指定为C++20 版本 set(CMAKE_CXX_STANDARD 20) set(PROJ_NAME "TEST_Specim_Save") set(PROJ_VERSION_MAJOR 0) set(PROJ_VERSION_MINOR 0) set(PROJ_VERSION_PATCH 1) #设置项目名字为HelloWorld project(${PROJ_NAME}) #打开调试模式 add_definitions("-Wall -g") #设置头文件所在的文件夹 include_directories(${PROJECT_SOURCE_DIR}/include) #要链接的库文件所在的路径 link_directories(${PROJECT_SOURCE_DIR}/lib) add_library(SpectralCameraLib "${PROJECT_SOURCE_DIR}/src/spectral_camera.cpp") add_library(DisplayLib "${PROJECT_SOURCE_DIR}/src/display.cpp") add_library(DataPreprocessLib "${PROJECT_SOURCE_DIR}/src/data_preprocess.cpp") add_library(VisibleLightCameraLIB "${PROJECT_SOURCE_DIR}/src/visible_light_camera.cpp") link_directories(${PROJECT_SOURCE_DIR}/../CompliteEnv/Python37) #编译${PROJECT_SOURCE_DIR}/src/main.cpp在这个cpp文件为名为HelloWorld可执行文件 add_executable(${PROJ_NAME} "${PROJECT_SOURCE_DIR}/src/main.cpp") #链接动态链接库 target_link_libraries(${PROJ_NAME} PUBLIC yaml-cpp) target_link_libraries(${PROJ_NAME} PUBLIC SpectralCameraLib) target_link_libraries(${PROJ_NAME} PUBLIC SpecSensor) target_link_libraries(${PROJ_NAME} PUBLIC VisibleLightCameraLIB) target_link_libraries(${PROJ_NAME} PUBLIC DisplayLib) target_link_libraries(${PROJ_NAME} PUBLIC opencv_core490 opencv_highgui490 opencv_imgproc490 opencv_photo490 opencv_imgcodecs490 opencv_video490 opencv_videoio490) target_link_libraries(${PROJ_NAME} PUBLIC DataPreprocessLib)