使用Cmake添加文件夹下所有cpp和h文件
时间: 2024-03-12 11:50:04 浏览: 34
您可以使用以下代码在 CMakeLists.txt 文件中添加文件夹下所有 cpp 和 h 文件:
```
# 设置源文件夹路径
set(SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/your_folder)
# 获取源文件夹下所有 cpp 和 h 文件
file(GLOB SOURCE_FILES
${SOURCE_DIR}/*.cpp
${SOURCE_DIR}/*.h
)
# 添加源文件到项目中
add_executable(your_executable_name ${SOURCE_FILES})
```
这将设置源文件夹路径,并使用 `file(GLOB ...)` 命令获取源文件夹下所有的 cpp 和 h 文件。然后,使用 `add_executable` 命令将这些源文件添加到项目中。您需要将 `your_folder` 替换为您实际的文件夹名称,将 `your_executable_name` 替换为您项目的实际名称。
相关问题
cmake 添加文件夹下的所有文件
你可以使用以下命令将文件夹下的所有文件添加到 CMake 项目中:
```
file(GLOB_RECURSE sources "path/to/folder/*.cpp" "path/to/folder/*.h")
add_executable(myapp ${sources})
```
其中,`path/to/folder` 是你要添加的文件夹的路径,`myapp` 是你的项目名称,可以根据实际情况进行修改。这个命令会将文件夹下的所有 `.cpp` 和 `.h` 文件添加到项目中。
.cpp .h不同文件夹下 cmakelist
当.cpp和.h文件位于不同文件夹下时,我们需要在CMakeLists.txt中正确配置来确保编译器能够正确找到这些文件。
首先,在CMakeLists.txt文件中,我们需要添加以下代码:
```cmake
# 指定.cpp文件所在路径
include_directories(${CMAKE_SOURCE_DIR}/path/to/cpp)
# 指定.h文件所在路径
include_directories(${CMAKE_SOURCE_DIR}/path/to/header)
# 添加.cpp文件
add_executable(MyProgram ${CMAKE_SOURCE_DIR}/path/to/cpp/myprogram.cpp)
# 添加其他.cpp文件(如果有的话)
add_executable(OtherProgram ${CMAKE_SOURCE_DIR}/path/to/cpp/otherprogram.cpp)
# 链接头文件和.cpp文件
target_link_libraries(MyProgram MyHeader)
target_link_libraries(OtherProgram MyHeader)
```
其中,`${CMAKE_SOURCE_DIR}`表示CMakeLists.txt所在路径的上层路径。我们需要将路径中的`path/to/cpp`替换为实际的文件夹路径。
在这个例子中,我们假设我们的程序有两个.cpp文件:myprogram.cpp和otherprogram.cpp,它们的.h文件分别是MyHeader.h和OtherHeader.h。
我们首先使用`include_directories`命令指定.h文件所在的文件夹路径,然后使用`add_executable`命令添加.cpp文件。最后,使用`target_link_libraries`命令链接头文件和.cpp文件。
通过这样的配置,CMake就能够正确找到.cpp和.h文件,编译我们的程序。