1.CMake简介
使用简单方便,可以跨平台,构建项目编译环境,可以通过简单的Cmake生成负责的MakeFile文件。
2.CMake安装
在终端安装CMake,输入:
sudo apt install cmake
查看其版本:
cmake -version

3.CMake介绍
我们把上一篇博客写的muduo_server.cpp用cmake构建编译环境
.a--静态库 .so动态库
CMake命令就是从项目根目录开始找CMakeLists.txt
在文件夹下创建CMakeLists.txt
cmake_minimum_required(VERSION 3.0)
project(main)
# 配置编译选项
set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} -g)
# 配置头文件搜索路径
# include_directories()
# 配置库文件搜索路径
# link_directories()
# 设置需要编译的源文件列表
set(SRC_LIST ./muduo_server.cpp)
# 设置可执行文件最终存储的路径
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
# 把.指定路径下的所有源文件名字放入变量名SRC_LIST里面
# aux_source_directory(. SRC_LIST)
# 表示生成可执行文件server,由SRC_LIST变量所定义的源文件编译而来
add_executable(server ${SRC_LIST})
# 表示server这个目标程序,需要连接muduo_net muduo_base pthread这三个库文件
target_link_libraries(server muduo_net muduo_base pthread)
执行cmake .表示在当前文件夹寻找CMakeLists.txt,按照配置文件进行编译,生成makefile文件
执行cmake ..表示在上一级文件夹寻找CMakeLists.txt,按照配置文件进行编译,生成makefile文件
然后执行make,make就会去找makefile
最终生成的可执行文件在bin中。
在大型项目中一般采用如下结构:
- bin:生成可执行文件
- lib:生成的库文件
- include:生成的头文件
- src:源文件
- build:编译过程中产生的临时的中间文件
- test:测试文件
- example:示例
- thirdparty:依赖的第三方库
- 然后在放一个:CMakeLists.txt
- autobuild.sh:一键编译
CMake是一个用于管理项目构建过程的工具,支持跨平台。通过CMakeLists.txt文件,可以设置编译选项、头文件和库文件路径,以及指定源文件,生成MakeFile来编译可执行文件或库。文章通过一个实例展示了如何使用CMake构建一个简单的项目,并提到了大型项目的一般文件结构。
395

被折叠的 条评论
为什么被折叠?



