CMakeLists.txt 范例
- 目录结构
contents.png
2. 主目录下 CMakeLists
#版本 (必须)
cmake_minimum_required(VERSION 3.1)
# 工程名 (必须)
project(demo_client)
#批量打包文件夹中的源程序;
aux_source_directory(./src DIR_SRC)
# 在build中添加一个子文件夹lib, 并将CMakeLists目录下的lib中的源文件编译至bulid中的lib文件夹。
# 目录下的lib文件夹必须包含CMakeLists.txt ,否则报错。
add_subdirectory(./lib)
# add_subdirectory(./src)
# 可执行文件: (目标名 依赖1 依赖2 ...) (必须)
add_executable(demo_client)
# 或者 add_executable(epollexe epoll.cpp) 前面填名称,后面依赖源文件。
target_sources(demo_client PRIVATE main.cpp ${DIR_SRC})
# 加载库文件 (如果应用了库,则必须)
target_link_libraries(demo_client PRIVATE Mylib)
- 库目录下CMakeLists
aux_source_directory(. LIB)
# 库名, 静态/动态, 源文件
add_library(Mylib STATIC ${LIB})