现有如下cmake项目,根目录下包含一个include文件夹,内有header.h,根目录下还有src文件夹,内有文件main.cpp,header.cpp,两个文件均引用header.h,src文件夹以及项目根目录下均有cmakelists.txt,希望构建的可执行文件在src文件夹中进行给出cmakelists.txt代码
时间: 2024-02-28 10:53:47 浏览: 58
以下是一个可能的CMakeLists.txt文件的示例代码:
在项目根目录下的CMakeLists.txt文件:
```cmake
cmake_minimum_required(VERSION 3.10)
project(project_name)
# 设置 C++ 标准
set(CMAKE_CXX_STANDARD 11)
# 添加 include 目录
include_directories(include)
# 添加 src 子目录
add_subdirectory(src)
# 链接库文件
target_link_libraries(main header)
```
在src子目录下的CMakeLists.txt文件:
```cmake
# 添加头文件
include_directories(${PROJECT_SOURCE_DIR}/include)
# 添加库文件
add_library(header header.cpp)
# 添加可执行文件
add_executable(main main.cpp)
# 链接库文件
target_link_libraries(main header)
```
这样应该就能够正确地构建项目了,并且可执行文件会在src目录下生成。注意要将src目录下的CMakeLists.txt文件添加到项目根目录下的CMakeLists.txt文件中。
阅读全文