cmake怎么跑子目录的cmake
时间: 2023-08-24 15:04:45 浏览: 48
要在CMake中运行子目录的CMake文件,你可以使用`add_subdirectory`命令。这个命令的语法是:
```cmake
add_subdirectory(sub_directory)
```
其中,`sub_directory`是你想要运行CMake的子目录的路径。当你调用`add_subdirectory`时,CMake会在指定的子目录中查找`CMakeLists.txt`文件,并执行其中的代码。
以下是一个示例,展示了如何在主项目中引用一个子项目:
```
main_project/
CMakeLists.txt
src/
main.cpp
sub_project/
CMakeLists.txt
src/
sub_main.cpp
```
在主项目的`CMakeLists.txt`文件中,你可以使用`add_subdirectory`命令来引用子项目:
```cmake
cmake_minimum_required(VERSION 3.12)
project(main_project)
add_subdirectory(sub_project)
add_executable(main main.cpp)
target_link_libraries(main sub_main)
```
子项目的`CMakeLists.txt`文件如下:
```cmake
cmake_minimum_required(VERSION 3.12)
project(sub_project)
add_library(sub_main STATIC sub_main.cpp)
```
在这个示例中,主项目会引用子项目,并将其编译为静态库。你可以根据需要进行适当的修改。
当你运行主项目的CMake时,它会自动运行子项目的CMake,并将其构建结果与主项目关联起来。这样,你就可以在主项目中使用子项目的功能了。