cmake小览

本文介绍了CMake的优势,包括操作层面的简化,如跨平台支持和自动依赖库搜索,以及结构层面的清晰,如构建目录与源码目录分离。详细阐述了一个CMake构建实例的流程,并解析了CMake的运行流程、结构和基本原理,涉及target、变量和缓存的概念。最后提及了CMake的配置和变量传递特性。
摘要由CSDN通过智能技术生成

优势

操作层面优势——简化
  1. 跨平台。

    make编写对特定平台透明。开发者按照语法写make,CMake自动生成不同平台上原生构建工具需要的构建文件;

  2. 自动搜索你的软件所依赖的库、头文件,以及实现共享库和静态库的构建切换;

  3. 自动生成项目文件依赖关系;

结构层面优势——清晰
  1. 项目的构建目录源码目录分离;

    随时删除构建文件而不用担心会误删掉项目的源码文件

  2. 配置阶段增加选择组件的权限;

实例一

流程
  1. 构建目录结构(bin;Test[math]);

  2. math子目录下编译出一个静态库目标;

    add_library (${MATH_LIB} STATIC math.cpp);

  3. 程序来引用数学库;

    CMakeLists.txt文件需要考虑的要素内容:

    项目名; 编译器; boost库; 库目标名; 
    文件搜索路径; 维护LIBS变量; 可执行文件数学库;
    
  4. cma

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值