初学者对cmake 和 CMakeLists.txt 的理解

本文介绍了CMake作为一个高层次的跨平台编译工具,如何简化在Linux和Windows等不同环境下使用不同编译器的复杂性。通过CMakeLists.txt配置文件,CMake能够生成对应平台的编译配置,使得源代码的编译过程更加一致和便捷。作者以个人理解和实际应用出发,探讨了CMake在C/C++跨平台开发中的重要性。
摘要由CSDN通过智能技术生成

学习c/c++总是断断续续的,也没正经写过项目,最近又拾起来写东西,希望这次能系统的研究好c/c++吧。

个人对cmake的理解

这是一个高层次的跨平台的编译工具。为啥说是高层次的呢?在linux下,编译软件都是用make && make install ,也就是用make命令;在windows下用的是vs工具的编译功能,当然底层到底是啥编译器我不清楚。总之,不同的环境下有不同的 编译器,学习者就麻烦了,跨平台开发还得学习不同的编译器以及配置文件。

而cmake则一统江湖了,它检测到当前的开发和编译环境是啥,比如linux下的make编译器,然后cmake就可以生成make编译需要的配置文件,然后再执行make命令进行编译。同理,windows下也是这样。

这个野路子出身的程序员,没学习过编译原理,真的一切都是靠猜,或者说是个人的理解,不一定对,但能推动学习的进度不停的往前蛄蛹。

再说CMakeLists.txt 

这个文件是配合cmake命令的配置文件,相当于maven的pom.xml , node的 package.json 。如果说不通就是,CMakeLists.txt配置cmake命令,并不直接完成源代码的编译,只是生成对应开发环境和编译器的配置文件,比如make的编译配置文件,然后make命令再完成编译。

为啥这么折腾呢?因为c/c++再实现跨平台的开发中,并不像java那么天下一统,不同操作系统有不同的开发环境和编译器,没办法,只得再上层又搞了一个cmake来管理所有的编译器。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

小崔爱读书

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

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

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

打赏作者

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

抵扣说明:

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

余额充值