在这篇博文中,我们将详细解释如何编写 CMakeLists.txt
来编译一个简单的线程池项目,并展示如何在 CMake 中完成项目的构建与编译。
1.项目结构
假设我们的项目有当前文件,ThreadPool.h,ThreadPool.cpp,main.cpp。如果没有请参考我的上一篇文章,里面有完整代码。
- ThreadPool.h
- ThreadPool.cpp
- main.cpp
那么,我们需要将ThreadPool.cpp编译成动态库.so以提供给main.cpp使用。
2.准备工作
在项目目录下创建src(源文件),include(头文件)目录,分开存放ThreadPool.cpp和ThreadPool.h,并创建CMakeLists.txt文件(注意L是大写),目录情况如下:
thread线程池/
├── include/ # 包含头文件
│ └── ThreadPool.h
├── src/ # 源文件目录
│ └── ThreadPool.cpp