6.MariaDB笔记——cmake使用介绍一
1. Cmake简介
以前也是只用make命令居多,但是CMake是一个比make更高级的编译配置工具,可以根据不同的硬件平台、不同的编译器,生成相应的Makefile或者vcproj项目。
通过编写CMakeLists.txt,可以控制生成的Makefile,从而控制编译过程。CMake自动生成的Makefile不仅可以通过make命令构建项目生成目标文件,还支持安装(makeinstall)、测试安装的程序是否能正确执行(make test,或者ctest)、生成当前平台的安装包(make package)、生成源码包(make package_source)、产生Dashboard显示数据并上传等高级功能,只要在CMakeLists.txt中简单配置,就可以完成很多复杂的功能,包括写测试用例。
如果有嵌套目录,子目录下可以有自己的CMakeLists.txt。
2. 下载路径
不同平台下载不同的安装包。
3. 使用
安装完毕后,可以使用图形化,命令式 cmake-gui
如下图1
4. 第一步基本点
简单的项目,CMakeLists至少需要2行。
l CMakelists文件如下:
cmake_minimum_required(VERSION 2.6)
project(Tutorial)
add_executable(Tutorialtutorial.cxx)
PS:cmake支持大小写。
其中tutorial.cxx式代码本身,计算平方根。
l Tutorial.cxx内容如下:
// A simple program that computes the square root of a number
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main (int argc, char *argv[])
{
if (argc < 2)
{
fprintf(stdout,"Usage: %s number\n",argv[0]);
return 1;
}
double inputValue = atof(argv[1]);
double outputValue = sqrt(inputValue);
fprintf(stdout,"The square root of %g is %g\n",
inputValue, outputValue);
return 0;
}
然后在该目录下执行cmake .
生成相关文件夹CMakeFiles和相关工作项目。
如下图2,多了很多东西:
然后可以通过VS打开Tutorial.sln,使用工具进行编译了。
或者使用命令行
cmake –build .
进行编译。
会生成一个Debug文件夹,里面包含可执行的二进制文件。