cmake_minimum_required(VERSION 3.16) project(chengnan VERSION 1.0.0 LANGUAGES CXX) set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_AUTOMOC ON) set(CMAKE_AUTOUIC OFF) set(CMAKE_AUTORCC OFF) find_package(OpenCV REQUIRED COMPONENTS core imgproc imgcodecs) find_package(Qt6 QUIET COMPONENTS Widgets) if (Qt6_FOUND) qt_add_executable(chengnan main.cpp MainWindow.h MainWindow.cpp ) target_link_libraries(chengnan PRIVATE Qt6::Widgets ${OpenCV_LIBS}) else() find_package(Qt5 REQUIRED COMPONENTS Widgets) add_executable(chengnan main.cpp MainWindow.h MainWindow.cpp ) target_link_libraries(chengnan PRIVATE Qt5::Widgets ${OpenCV_LIBS}) endif() target_include_directories(chengnan PRIVATE ${OpenCV_INCLUDE_DIRS}) target_compile_definitions(chengnan PRIVATE CHENGNAN_APP_VERSION="${PROJECT_VERSION}" ) if (MSVC) target_compile_options(chengnan PRIVATE /W4 /permissive-) else() target_compile_options(chengnan PRIVATE -Wall -Wextra -Wpedantic) endif() install(TARGETS chengnan RUNTIME DESTINATION bin)