CMake是开源、跨平台的构建工具,可以让我们通过编写简单的配置文件去生成本地的Makefile,这个配置文件是独立于运行平台和编译器的,这样就不用亲自去编写Makefile了,而且配置文件可以直接拿到其它平台上使用,无需修改,非常方便。

完整版:https://blog.csdn.net/whahu1989/article/details/82078563

Linux下CMake简明教程相关推荐

  1. Linux下CMake简明教程(二)同一目录下多个源文件

    代码在git 接下来进入稍微复杂的例子:在同一个目录下有多个源文件.在之前的目录下添加2个文件,testFunc.c和testFunc.h.添加完后整体文件结构如下, (base) ledi@ledi ...

  2. Linux下CMake简明教程(一)简单入门

    代码链接 CMake是开源.跨平台的构建工具,可以让我们通过编写简单的配置文件去生成本地的Makefile,这个配置文件是独立于运行平台和编译器的,这样就不用亲自去编写Makefile了,而且配置文件 ...

  3. Linux下CMake简明教程(七)对库进行链接

    代码在git 既然我们已经生成了库,那么就进行链接测试下.重新建一个工程目录,然后把上节生成的库拷贝过来,然后在在工程目录下新建src目录和bin目录,在src目录下添加一个main.c,整体结构如下 ...

  4. Linux下CMake简明教程(10) 定义宏来控制打印的信息

    代码在git 假设我们有个main.c,其内容如下 #include <stdio.h>int main(void) {#ifdef WWW1printf("hello worl ...

  5. Linux下CMake简明教程(九) 添加控制选项

    代码在git 有时希望在编译代码时只编译一些指定的源码,可以使用cmake的option命令,主要遇到的情况分为2种: 本来要生成多个bin或库文件,现在只想生成部分指定的bin或库文件 对于同一个b ...

  6. Linux下CMake简明教程(八) 添加编译选项

    代码在git 有时编译程序时想添加一些编译选项,如-Wall,-std=c++11等,就可以使用add_compile_options来进行操作. 这里以一个简单程序来做演示,main.cpp如下 # ...

  7. Linux下CMake简明教程(六)动态库和静态库的编译控制

    代码在git 有时只需要编译出动态库和静态库,然后等着让其它程序去使用.让我们看下这种情况该如何使用cmake.首先按照如下重新组织文件,只留下testFunc.h和TestFunc.c ├── CM ...

  8. Linux下CMake简明教程(五)正规一点的组织结构

    代码在git 正规一点来说,一般会把源文件放到src目录下,把头文件放入到include文件下,生成的对象文件放入到build目录下,最终输出的elf文件会放到bin目录下,这样整个结构更加清晰.让我 ...

  9. Linux下CMake简明教程(四)不同目录下多个源文件

    代码在git 一般来说,当程序文件比较多时,我们会进行分类管理,把代码根据功能放在不同的目录下,这样方便查找.那么这种情况下如何编写CMakeLists.txt呢? 我们把之前的源文件整理一下(新建2 ...

  10. Linux下CMake简明教程(三)同一目录下多个源文件

    如果在同一目录下有多个源文件,那么只要在add_executable里把所有源文件都添加进去就可以了.但是如果有一百个源文件,再这样做就有点坑了,无法体现cmake的优越性,cmake提供了一个命令可 ...

最新文章

  1. 云时代架构阅读笔记十五——架构设计思维(一)
  2. Java客户端操作elasticsearch--查询索引库
  3. rm: cannot remove directory `misc': Device or resource busy
  4. 学习笔记13-C语言-字符串函数、缓冲区
  5. 数据结构之图:加权有向图与dijkstra算法找到最短路径,Python——28
  6. linux搭建ftp服务器可上传下载,通过linux系统搭建ftp服务然后使用filezilla客户端进行上传下载...
  7. VB调用周立功CAN接口卡接口库函数
  8. 动量梯度下降(Momentum、指数加权平均)、逐参数适应学习率方法(Adagrad、RMSprop、Adam)、学习率退火、归一化/标准化
  9. 去掉桌面图标蓝底的方法
  10. Beyond Compare linux
  11. 基于SSM的火车票订票系统
  12. python计算日期到天数_利用python计算时间差(返回天数)
  13. left join 多表关联查询
  14. jquery发送put请求_通过 Ajax 发送 PUT、DELETE 请求的两种实现方式
  15. excel自动排班表_Excel数据分析-如何制作自动更新的数据透视表
  16. D2. Coffee and Coursework (Hard Version)(思维+贪心)
  17. DirectX的设置
  18. 论文翻译:A Comprehensive Survey on Graph Neural Networks
  19. c语言 拷入pdf,怎么样才能把PDF文档从电脑拷到U盘
  20. CIA计算机英语,CIA英语全称,汉语意思

热门文章

  1. Sql查询一个列对应多个列
  2. Servlet 生命周期、工作原理
  3. 【神经网络与深度学习】【C/C++】比较OpenBLAS,Intel MKL和Eigen的矩阵相乘性能
  4. 教你清楚了解JAVA动态代理
  5. 学习笔记#Android Studio 从安装到虚拟机启动
  6. ScrollViewer滚动究竟来触发载入数据的Behavior
  7. 【Java】SpringBoot入门学习及基本使用
  8. Centos 76分布式lamp平台
  9. java.lang.ClassCastException
  10. uint8_t / uint16_t / uint32_t /uint64_t 是什么数据类型(转)