0. CMake多级目录下工程实现
本文记录了某工程项目中cmake的学习过程及结果,主要涉及cmake的安装,cmake示例编写和平台构建;
源码下载地址:https://download.youkuaiyun.com/download/dodonei/10306612
- CMake 下载安装
- 示例工程目录结构
- CMake Linux 平台构建工程项目
- *CMake Windows平台构建工程项目
1. Cmake安装
Linux安装
(1)下载 https://cmake.org/
(2) 可以通过下载源码,在你的机器上编译安装,最简单方法,是下载二进制安装后的包,拷备到你的机器上解压,设置PATH环境变量即可开始使用;Windows安装
2. 示例工程目录结构
MSLayer为一个静态库,iMM_Cache也为一个静态库,均为动态库,CMakelist的具体实现,清参考源码,include和src中放的源码是示例,你编译时可以放入你自己源码。
MM_SDK/
├── AudioCache
│ ├── CMakeLists.txt
│ ├── include
│ │ ├── AudioCacheAPI.h
│ │ └── StrategySelect.h
│ └── src
│ ├── AudioCacheAPI.cpp
│ └── StrategySelect.cpp
├── CMakeLists.txt
├── EngineCommon
│ ├── adpcm.cpp
│ └── voc_vox.cpp
├── MM_Audio
│ ├── CMakeLists.txt
│ ├── include
│ │ ├── audiolib.h
│ │ └── resource.h
│ └── src
│ ├── audiolib.cpp
│ └── toaulaw.cpp
├── MM_EB9
│ ├── CMakeLists.txt
│ ├── include
│ │ ├── eMMAgent.h
│ │ └── resource.h
│ └── src
│ ├── backaudio.cpp
│ └── Win_Linux_file_func.cpp
├── MM_ML
│ ├── CMakeLists.txt
│ ├── include
│ │ ├── jt_license_rsa.h
│ │ └── tts_proxy_uuid.h
│ └── src
│ ├── jt_license_rsa.cpp
│ └── tts_proxy_uuid.cpp
├── MM_Session
│ ├── CMakeLists.txt
│ ├── include
│ │ ├── audiolib.h
│ │ └── stdafx.h
│ └── src
│ ├── Config.cpp
│ └── tovox.cpp
├── MM_USyn
│ ├── CMakeLists.txt
│ ├── include
│ │ ├── MM_USyn.h
│ │ ├── resource.h
│ │ └── USynAPI.h
│ └── src
│ ├── backaudio.cpp
│ └── MM_USyn.cpp
├── MM_VW
│ ├── CMakeLists.txt
│ ├── include
│ │ ├── MM_VW.h
│ │ └── text_parser