Cmake 入门

Cmake 只是个工具,不要神化

入门

口诀:
1.Declare a target
2.Declare target’s traits
3.It’s all about target

Git clone: cmake-examples
Git clone: cmake-examples-Chinese
Git clone: awesome-cmake

喜欢阅读的文章:
Learn CMake’s Scripting Language in 15 Minutes

小结:
设置变量;这样的语句有set、file、list、find_library、aux_source_directory、generator expressions;

设置target,也就是构建的目标是什么(你构建个项目总得有个目标吧,一般来说就是库或者可执行文件);
这样的语句有add_library、add_executable;

设置target的属性,也就是定义如何生成target(比如源文件的路径、编译选项、要链接什么库…);
这样的语句有add_definitions、target_link_libraries、link_directories、include_directories、target_include_directories;

进阶

Effective Modern CMake

文档

CMake Reference Documentation
cmake-buildsystem.7
cmake-language(7)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
CMake是一种跨平台的开源构建工具,它可以自动生成与操作系统和编译器兼容的构建脚本,使项目的构建更加简单和灵活。本文将针对Linux系统进行CMake入门教程。 首先,你需要在Linux系统上安装CMake。你可以通过包管理工具,如apt或yum,在终端中运行相应的安装命令来安装CMake。 安装完成后,你可以进入你的项目目录,创建一个CMakeLists.txt文件来配置你的项目。CMakeLists.txt是CMake的配置文件,它定义了项目的目标、依赖关系和编译选项等。 打开一个文本编辑器,在CMakeLists.txt中添加以下内容: ``` cmake_minimum_required(VERSION 3.10) project(MyProject) set(CMAKE_CXX_STANDARD 11) add_executable(MyExecutable main.cpp) ``` 在这个配置中,我们首先指定了CMake的最低版本要求,并命名了我们的项目。接下来,我们设置了C++的标准为C++11。然后,我们使用add_executable命令添加了一个可执行文件目标,并指定其源文件为main.cpp。 保存并关闭CMakeLists.txt文件。 然后,你需要在终端中进入你的项目目录,并创建一个build目录用于构建过程。 ``` mkdir build cd build ``` 在build目录中,你可以运行cmake命令来配置你的项目。 ``` cmake .. ``` 这将根据CMakeLists.txt文件生成构建脚本。如果你在CMakeLists.txt中没有错误,你将看到一些输出信息,并且build目录中将生成构建脚本。 最后,你可以运行make命令来编译你的项目。 ``` make ``` 这将根据生成的构建脚本编译你的项目。如果你的项目没有编译错误,你将在build目录中得到一个可执行文件。 至此,你已经成功入门CMake在Linux系统上的使用。你可以根据自己的需要修改CMakeLists.txt来添加更多的目标、库和编译选项等。 总结起来,CMake是一个功能强大且易于使用的构建工具,它可以帮助你更好地管理和构建你的项目。希望这个教程对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

且漫CN

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值