CMakeLists.txt文件示例
时间: 2023-06-22 10:42:55 浏览: 96
以下是一个简单的 CMakeLists.txt 文件示例:
```cmake
# 设置最低版本号
cmake_minimum_required(VERSION 3.10)
# 设置工程名称
project(MyProject)
# 添加可执行文件
add_executable(MyExecutable main.cpp)
# 添加头文件搜索路径
include_directories(include)
# 添加链接库搜索路径
link_directories(lib)
# 链接库
target_link_libraries(MyExecutable MyLibrary)
```
这个示例中,我们设置了 CMake 的最低版本号为 3.10,指定了工程名称为 MyProject,添加了一个可执行文件 MyExecutable,添加了头文件搜索路径 include 和链接库搜索路径 lib,链接了一个名为 MyLibrary 的库。
相关问题
CMakeLists.txt文件复杂示例
以下是一个稍微复杂一些的 CMakeLists.txt 文件示例,包含了多个可执行文件和链接库:
```cmake
# 设置最低版本号
cmake_minimum_required(VERSION 3.10)
# 设置工程名称
project(MyProject)
# 添加可执行文件
add_executable(MyExecutable1 main1.cpp)
add_executable(MyExecutable2 main2.cpp)
# 添加头文件搜索路径
include_directories(include)
# 添加链接库搜索路径
link_directories(lib)
# 添加第三方库
add_library(MyLibrary1 SHARED lib1.cpp)
add_library(MyLibrary2 STATIC lib2.cpp)
# 链接库
target_link_libraries(MyExecutable1 MyLibrary1)
target_link_libraries(MyExecutable1 MyLibrary2)
target_link_libraries(MyExecutable2 MyLibrary1)
target_link_libraries(MyExecutable2 MyLibrary2)
# 安装
install(TARGETS MyExecutable1 MyExecutable2 DESTINATION bin)
install(TARGETS MyLibrary1 MyLibrary2 DESTINATION lib)
install(FILES "${PROJECT_SOURCE_DIR}/include/lib1.h" DESTINATION include)
```
这个示例中,我们同样设置了 CMake 的最低版本号为 3.10,指定了工程名称为 MyProject,添加了两个可执行文件 MyExecutable1 和 MyExecutable2,添加了头文件搜索路径 include 和链接库搜索路径 lib,添加了两个名为 MyLibrary1 和 MyLibrary2 的库,并且分别指定了其中一个为共享库,一个为静态库。然后我们分别将 MyLibrary1 和 MyLibrary2 链接到 MyExecutable1 和 MyExecutable2 中。最后,我们使用 install 命令将所有的可执行文件、链接库和头文件都安装到指定的目录中。
如何创建 CMakeLists.txt 文件
CMakeLists.txt 文件是用于 CMake 构建系统的配置文件,用于描述项目的构建过程。下面是创建 CMakeLists.txt 文件的步骤:
1. 在项目根目录下创建一个名为 CMakeLists.txt 的文件。
2. 打开 CMakeLists.txt 文件,开始编写配置信息。
3. 在 CMakeLists.txt 文件中,使用 `cmake_minimum_required` 命令指定要求的 CMake 版本。
4. 使用 `project` 命令指定项目的名称和版本号。
5. 使用 `add_executable` 命令添加可执行文件,或者使用 `add_library` 命令添加静态库或动态库。
6. 使用 `target_link_libraries` 命令添加链接库。
7. 编写完配置信息后,保存 CMakeLists.txt 文件。
下面是一个简单的 CMakeLists.txt 文件示例,用于构建一个名为 "hello" 的可执行文件:
```
cmake_minimum_required(VERSION 3.10)
project(hello VERSION 1.0)
add_executable(hello main.cpp)
target_link_libraries(hello some_library)
```
在上面的示例中,我们指定了 CMake 的最低版本为 3.10,指定了项目名称为 "hello",并添加了一个名为 "main.cpp" 的源文件。最后,我们还添加了一个名为 "some_library" 的链接库。
阅读全文