CMake构建项目级编译环境
开始之前 参与到一个项目时,往往因为需求而去快速Get某些技能,并将之应用到实际的项目中,慢慢的对这些知识越来越熟悉,有时候准备把Get到的这些知识记录下来,但静下来想想要把这些知识点写全也不太容易,而且自我感觉应该不会忘的,所以把笔记的事情没当回事。时间一天天过去,当我们参与到其他项目之中,开始了新的关键技术分析和概要设计,当初Get到的那些技能由于不经常使用而慢慢退化,当某个时间点再次需要这些技能时,开始在大脑中搜索,what fuck???除了有个概念,什么都记不起来,那些之前踩过的坑,又会再踩一遍,那些曾经困惑的知识点,又会再次感到困惑,天道好轮回,苍天绕过谁啊!!!CMake有很多人在用,现在Github上大部分工程都支持CMake编译,当我自己构建工程时还是遇到过很多问题,但能搜索到的知识点还是太少,只能去研究cmake的官方英文文档,所以这里把重要的知识点记录一下。 背景 项目工程目录介绍 工程目录树如下图所示,微服务的项目工程结构,common目录是多个服务(services)公共的依赖,services目录主要存放多个服务,包括服务1(service1)、服务2(service2)、… 服务n,每个单服务就是一个应用,意味着均可编译产生一个可执行程序。service1的子目录包含头文件目录inc和源文件目录src以及用于单元测试的test目录