CMake使用


声明cmake最低版本

cmake_minimum_required( VERSION 2.8 )

声明一个cmake工程

project( HelloSLAM )

创建库

  • 静态库
add_library( hello libHelloSLAM.cpp )
  • 动态库
add_library( hello  SHARED libHelloSLAM.cpp )

将可执行程序链接到库上

add_executable( useHello useHello.cpp )
target_link_libraries( useHello hello )

设置构建类型

 set(CMAKE_BUILD_TYPE "Release") # Debug

指定编译选项

set(CMAKE_CXX_FLAGS "-O3")

指定所需要的头文件所在目录

include_directories( /usr/include/eigen3 )

find_package使用

find_package(CURL REQUIRED)
include_directories(${CURL_INCLUDE_DIR})
target_link_libraries(curltest ${CURL_LIBRARY})

参考:https://www.cnblogs.com/newneul/p/8364924.html


SET指令

语法: SET(VAR [VALUE] [CACHE TYPE DOCSTRING [FORCE]])
指令功能: 用来显式的定义变量
例子: SET (SRC_LST main.c other.c)
说明: 用变量代替值,例子中定义SRC_LST代替后面的字符串。
https://blog.csdn.net/guanguanboy/article/details/84838920


原文地址:https://www.cnblogs.com/PythonFCG/p/13860057.html