cmake初识

1、构建CMakeLists.txt

CMakeLists.txt是CMake的指令文件。CMake根据该文件生成makefile,最后调用generator来生成可执行程序或者库。一个工程下每个线(每个文件夹)都需要一个CMakeLists.txt。

假设编写main.cpp实现平方根计算,然后在该目录下新建CMakeLists.txt文档,内容如下:

# 设置最小cmake版本号
cmake_minimum_required(VERSION 3.10)

# 设置工程名
project(CalculateSqrt VERSION 1.0)

# 添加文件
add_executable(CalculateSqrt main.cpp)

2、build

在文件夹中打开命令行或者Linux shell输入

mkdir build
cd build
cmake ..

第一条语句:在根目录下创建一个build文件夹来放置cmake生成的文件,保持源文件目录下的整洁;
第二条语句:打开build文件夹;
第三条语句:运行cmake来配置项目并生成一个本地构建系统。当然,如果只是简单的测试,也可以不指定build作为生成文件的目录,直接输入。

cmake .

可以看到“.”代表当前目录,“. .”代表上级目录。

完整的cmake语句应该是:

cmake [<options>] -S <path-to-source> -B <path-to-build>

3、run

根据generator的不同,完成build之后,build文件夹下的文件可能不同。
在命令行输入

cmake --help

查看当前默认的generator(带*号),比如下图
在这里插入图片描述
当前默认的generator是vs2019,编译链接之后生成.exe文件
在这里插入图片描述
当前generator是unix makefiles。打开build文件夹可以看到一个makefile文件,也就是与命令行make工具一起使用的工程文件;
还有一个CMakeCache.txt,存储诸如构建系统配置选项等信息的文件,例如camke的版本号,generator的信息等等:

//Name of generator.
CMAKE_GENERATOR:INTERNAL=Unix Makefiles

调用构建系统来编译/链接这个项目,build文件夹下会生成工程同名文件:

cmake --build .

当然,也可用make命令来编译/链接这个项目。

make

但初学者还是推荐"cmake --build"命令,因为make是默认gcc编译器,如果电脑上没有安装gcc,而电脑默认编译器是vs,就会出错。

如果是用vs编译,会在build下有个debug文件夹,下面有可执行文件.exe;

可以用命令行语句简单地测试下成功与否

 .\CalculateSqrt.exe 4 

或者

./CalculateSqrt 4

相关代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值