1.Cmake 命令出錯問題分析,以下語句報錯,cmake是通過系統查找對應的模塊的地址的,所以沒有找到應該是環境變量錯誤了。
FIND_PACKAGE( OpenCV 4.0.0 REQUIRED )
2.重新添加系統環境變量。
3.直接測試對應的程序並對於cmake文件做了修改。
原始Cmake文件
cmake_minimum_required (VERSION 3.0) PROJECT(Photo_Tool) set (CMAKE_CXX_STANDARD 11) IF(EXISTS ${CMAKE_BINARY_DIR}/conanbuildinfo.cmake) include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake) conan_basic_setup() ENDIF() # Requires OpenCV # FIND_PACKAGE( OpenCV 4.0.0 REQUIRED ) FIND_PACKAGE( OpenCV 4.0.0 REQUIRED ) MESSAGE("OpenCV version : ${OpenCV_VERSION}") include_directories(${OpenCV_INCLUDE_DIRS}) link_directories(${OpenCV_LIB_DIR}) ADD_EXECUTABLE( ${PROJECT_NAME} main.cpp ) TARGET_LINK_LIBRARIES( ${PROJECT_NAME} ${OpenCV_LIBS} ) ADD_EXECUTABLE( ch3_sample1 sample1.cpp ) TARGET_LINK_LIBRARIES( ch3_sample1 ${OpenCV_LIBS} ) ADD_EXECUTABLE( ch3_sample2 sample2.cpp ) TARGET_LINK_LIBRARIES( ch3_sample2 ${OpenCV_LIBS} ) ADD_EXECUTABLE( ch3_sample3 sample3.cpp ) TARGET_LINK_LIBRARIES( ch3_sample3 ${OpenCV_LIBS} ) ADD_EXECUTABLE( ch3_sample4 sample4.cpp ) TARGET_LINK_LIBRARIES( ch3_sample4 ${OpenCV_LIBS} ) ADD_EXECUTABLE( ch3_sample5 sample5.cpp ) TARGET_LINK_LIBRARIES( ch3_sample5 ${OpenCV_LIBS} -lglut -lGL -lGLU) ADD_EXECUTABLE( ch3_sample6 sample6.cpp ) TARGET_LINK_LIBRARIES( ch3_sample6 ${OpenCV_LIBS} )
更新后Cmake
cmake_minimum_required (VERSION 3.0) PROJECT(Photo_Tool) set (CMAKE_CXX_STANDARD 11) IF(EXISTS ${CMAKE_BINARY_DIR}/conanbuildinfo.cmake) include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake) conan_basic_setup() ENDIF() # Requires OpenCV # FIND_PACKAGE( OpenCV 4.0.0 REQUIRED ) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "D:/Code/opencv_cxx/opencv-4.0.0-bin" ) set(OpenCV_DIR "D:/Code/opencv_cxx/opencv-4.0.0-bin") FIND_PACKAGE( OpenCV 4.0.0 REQUIRED ) MESSAGE("OpenCV version : ${OpenCV_VERSION}") include_directories(${OpenCV_INCLUDE_DIRS}) link_directories(${OpenCV_LIB_DIR}) Link_directories(D:/Code/opencv_cxx/opencv-4.0.0-bin/install/include/opencv2) ADD_EXECUTABLE( ${PROJECT_NAME} main.cpp ) TARGET_LINK_LIBRARIES( ${PROJECT_NAME} ${OpenCV_LIBS} ) ADD_EXECUTABLE( ch3_sample1 sample1.cpp ) TARGET_LINK_LIBRARIES( ch3_sample1 ${OpenCV_LIBS} ) ADD_EXECUTABLE( ch3_sample2 sample2.cpp ) TARGET_LINK_LIBRARIES( ch3_sample2 ${OpenCV_LIBS} ) ADD_EXECUTABLE( ch3_sample3 sample3.cpp ) TARGET_LINK_LIBRARIES( ch3_sample3 ${OpenCV_LIBS} ) ADD_EXECUTABLE( ch3_sample4 sample4.cpp ) TARGET_LINK_LIBRARIES( ch3_sample4 ${OpenCV_LIBS} ) ADD_EXECUTABLE( ch3_sample5 sample5.cpp ) TARGET_LINK_LIBRARIES( ch3_sample5 ${OpenCV_LIBS} -lglut -lGL -lGLU) ADD_EXECUTABLE( ch3_sample6 sample6.cpp ) TARGET_LINK_LIBRARIES( ch3_sample6 ${OpenCV_LIBS} )
4.一次編譯通過
5.打開VS2017運行結果,cmake在編譯和配置方面確實很方便。
OpenCV4.0的Qt控件的融合要是很贊,直接可以放縮以及查看像素值。