gpt4 book ai didi

c++ - 如何在CMake中分离头文件和源文件?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:28:10 48 4
gpt4 key购买 nike

我的项目结构如下:

--root: main.cpp CMakeLists.txt 

--src: function.cpp CMakeLists.txt

--include: function.h

主要.cpp:

#include <iostream>
#include "function.h"
using namespace std;

int main(int argc, char *argv[])
{
//call module in function.hpp
return 0;
}

根目录下的CMakeLists.txt:

 project(t1)
cmake_minimum_required(VERSION 2.8)
add_subdirectory(src)
file(GLOB_RECURSE SOURCES
include/function.h
src/function.cpp)
add_executable(${PROJECT_NAME} ${SOURCES})

src目录下的CmakeLists.txt:

include_directories(${PROJECT_SOURCE_DIR}/include)

如何在根目录和src目录下编写CMakelists实现功能的分离实现?更进一步,如何在 main 中调用它们。 CMake not finding proper header/include files in include_directories 中可能的解决方案.但是还是不符合我的情况。

最佳答案

在根目录中:

project(t1)
cmake_minimum_required(VERSION 2.8)
include_directories(include)
add_subdirectory(src)

在源代码中:

set(TARGET target_name)
add_executable(${TARGET} main.cpp function.cpp)

关于c++ - 如何在CMake中分离头文件和源文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42533166/

48 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com