CMakeLists.txt模板+常用库头文件添加和库文件链接+调用头文件

CMakeLists.txt模板

#声明要求的cmake最低版本
cmake_minimum_required(VERSION 3.10)
#设置c++版本
set(CMAKE_CXX_STANDARD 11)
#声明一个cmake工程
project("Hello world")
#添加头文件
include_directories("库头文件名")
find_package(库名 REQUIRED)
#find_package命令是cmake提供的寻找某个库的头文件与库文件的指令。如果cmake能够找到它,就会提供头文件和库文件所在的目录的变量,一般为库名_DIRECTORIES和库名_LIBRARIES。
include_directories( ${库名_DIRECTORIES} )
#添加可执行程序
add_executable(main main.cpp)
#把可执行程序链接到库文件上
target_link_libraries(main ${库名_LIBRARIES})

常用库头文件添加和库文件链接

#Eigen库是一个仅由头文件组成的库,所以只需添加头文件即可,而无需链接到库文件
include_directories("/usr/include/eigen3")
#OpenCV
#添加OpenCV的头文件
find_package(OpenCV REQUIRED)
include_directories(${OpenCV_DIRECTORIES})
#链接OpenCV的库文件
target_link_libraries(main ${OpenCV_LIBRARIES})
#Sophus也是仅由头文件组成的库
find_package(Sophus REQUIRED)
include_directories(${Sophus_DIRECTORIES})
#Pangolin
#添加头文件
find_package(Pangolin REQUIRED)
include_directories(${Pangolin_DIRECTORIES})
链接库文件
target_link_libraries(main ${Pangolin_LIBRARIES})

调用头文件

//Eigen头文件
#include 
#include 
#include 
//OpenCV头文件
#include 
#include 
#include 
#include 
//Sophus头文件
#include "sophus/se3.hpp"
//Pangolin头文件
#include 

你可能感兴趣的:(CMake学习,cmake,linux)