官术网_书友最值得收藏!

Generating a CMake script file

Before we start creating our source file, we are going to generate the CMakeLists.txt file to allow us to compile our project, structure it, and execute it. The following CMake script is simple and basic but enough to compile and generate the executable:

cmake_minimum_required (VERSION 3.0)

PROJECT(Chapter4_Phototool)

set (CMAKE_CXX_STANDARD 11)

# Requires OpenCV
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})

The first line indicates the minimum CMake version required to generate our project, the second one sets the project name that we can use as the ${PROJECT_NAME} variable, and the third one sets the required C++ version; in our case, we require the C++11 version, as we can see in the next snippet:

cmake_minimum_required (VERSION 3.0)

PROJECT(Chapter4_Phototool)

set (CMAKE_CXX_STANDARD 11)

Moreover, we require the OpenCV library. First, we need to find the library, and then we'll show a message on the OpenCV library version found with the MESSAGE function:

# Requires OpenCV 
FIND_PACKAGE( OpenCV 4.0.0 REQUIRED ) 
MESSAGE("OpenCV version : ${OpenCV_VERSION}") 

If the library, with a minimum version of 4.0, is found, then we include the headers and library files in our project:

include_directories(${OpenCV_INCLUDE_DIRS}) 
link_directories(${OpenCV_LIB_DIR})

Now, we only need to add the source files to compile and link with the OpenCV library. The project name variable is used as the executable name, and we use only a single source file, called main.cpp:

ADD_EXECUTABLE(${PROJECT_NAME} main.cpp) 
TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${OpenCV_LIBS})
主站蜘蛛池模板: 宽甸| 融水| 余姚市| 汉阴县| 南康市| 屏东县| 湘潭县| 阿城市| 镇雄县| 宁乡县| 鸡泽县| 清丰县| 蒙自县| 保亭| 安图县| 湖北省| 江达县| 金平| 北宁市| 利津县| 合川市| 荃湾区| 五原县| 思南县| 星座| 鞍山市| 岳西县| 杭锦后旗| 甘南县| 依兰县| 垣曲县| 阳高县| 旬阳县| 寿光市| 宁夏| 阳江市| 正宁县| 筠连县| 巨鹿县| 隆昌县| 武义县|