接触CMake有一段时间了,发现CMake确实好用,CMake对于一个具有大量代码的工程构建和管理非常有效。对于开发人员来说,一个好的CMake模板尤为重要。基于模板,只需简单修改下CMakeLists.txt文件就能做到很好的管理工程的构建和编译。下面我将通过两个例子分别基于x86平台和交叉编译来介绍CMake。
x86平台
系统环境:Ubuntu16.04 编译工具:gcc ,g++ 运行环境:x86平台
使用mkdir 命令新建一个project工程目录,在该目录下,再新建bin,build,lib,src目录,其中bin目录用来存放编译生成的二进制可执行文件,lib目录用来存放编译生成的静态库或动态库文件,build目录用来进行执行cmake命令和存放生成的cmake相关的文件,src目录是用来存放源代码文件,在src目录下再分别新建apps,include,libs目录,apps目录存放源代码文件(如.c或.cpp文件),include存放相关的头文件,libs目录存放该源代码编译时所需要链接的库文件。
下面我将以一个简单的例子来介绍CMake构建工程的过程。相关代码如下:
add.h
#ifndef __ADD_H_
#define __ADD_H_
#include <stdio.h>
int my_add(int x,int y);
#endif
add.c
#include "add.h"
int my_add(int