1、Cmake编译原理
CMake是一种跨平台编译工具,比make更为高级,使用起来要方便得多。CMake主要是编写CMakeLists.txt文件,然后用cmake命令将CMakeLists.txt文件转化为make所需要的makefile文件,最后用make命令编译源码生成可执行程序或共享库(so(shared object))。
2、一个cmakelists的例子详解
#.指定项目的名称,一般和项目文件夹名称对应,sln的名称
project(HXT)
#指定Cmake版本,最低版本要求
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.3)
#在指定域中设置一个命名属性
SET_PROPERTY(GLOBAL PROPERTY USE_FOLDER ON)
#使用set设置CMAKE_CXX_FLAGS变量
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
#添加编译选项
ADD_DEFINITIONS(-D UNICODE)
#设置需要用到的opencv模块,添加opencv库
find_package(OpenCV REQUIRED)
#指定头文件的搜索路径
INCLUDE_DIRECTORIES(.)
#指定include文件所在的路径
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/Algorithm)
#开始作用子文件夹下的CMakeLists,先Algorithm再Example(包含子目录)
add_subdirectory(Algorithm)
add_subdirectory(Example)
3、上述代码的扩展
(1)、SET_PROPERTY(GLOBAL PROPERTY USE_FOLDER ON)
set_property:在