【工具】cmake教程

下载与安装

http://www.cmake.org/HTML/Download.html

基本编译格式参考例子

文件名称:CMakeLists.txt
文件内容:

# 一个总工程的根目录
# 声明要求的 cmake 最低版本
cmake_minimum_required( VERSION 2.8 )

# 声明一个 cmake 工程
project( ROBOTICS )

# 设置编译模式
set( CMAKE_BUILD_TYPE "Debug" )

include_directories(../Algorithm)
include_directories(../Encoder)
# 工程中的一个子目录
# 设置源文件
SET(SRC_LIST  Filt_VS2.c
        LookupTable.c
        MathFunctions.c
        PositionUtils.c
        RG_Poly5f.c
        RG_SRamp.c
        RG_Trapez.c
        SOFilt.c)

# 添加一个库
add_library(algorithm ${SRC_LIST})

# 添加一个可执行程序
add_executable(test_algorithm test_algorithm.cpp)

# 将库文件链接到可执行程序上
target_link_libraries(test_algorithm  algorithm)

基本语法

常用

  • 设置工程名与语言
    PROJECT(projectname [CXX] [C] [Java])
    语言为可选项,默认支持所有语言。
  • 显式的定义变量
    SET(SRC_LIST main.c t1.c t2.c)
    使用定义变量 ${SRC_LIST}

基本语法规则

  • 变量使用${}方式取值,但是在 IF 控制语句中是直接使用变量名
  • 指令(参数 1 参数 2…),中间用空格或者分号隔开
    ADD_EXECUTABLE(hello main.c func.c)或者
    ADD_EXECUTABLE(hello main.c;func.c)
  • 指令是大小写无关

高频指令

  • 生成可执行文件
    ADD_EXECUTABLE(exe_name ${SRC_LIST})

编译命令

推荐在工程根目录下新建build文件,存放编译结果;

mkdir build

在build文件夹下执行编译命令

cd build      // 进入目录
cmake ..    // 拷贝上一级目录的编译配置至当前目录,生成编译环境
make          // 编译

清除编译结果

make clean
©️2020 CSDN 皮肤主题: 深蓝海洋 设计师:CSDN官方博客 返回首页