我有一些.cpp文件及其标头,包括在单独的文件夹中,我应如何为它们编写CMakeLists.txt。我无法写出他们的地址,因此编译器会收到这样的错误->没有此类文件
答案 0 :(得分:2)
这是CMake用于多个文件项目的简单示例。您需要根据自己的情况进行调整:
|-- CMakeLists.txt <<---- cMAKEfile
|-- include
| \-- header.h
\-- src
|-- header.cpp
\-- main.cpp
您的CMakeLists.txt应该如下所示:
project(test)
include_directories(include)
file(GLOB SOURCES "src/*.cpp")
add_executable(test ${SOURCES})
然后,您可以执行cmake
和make
命令。
答案 1 :(得分:0)
基于ConsistentProgrammer的回答:您可以创建两个变量来保存文件列表。
标题列表将文件包含在include目录中,其内容将如下所示:“ ./include/foo.h”,“ ./ include / bar.h” ...
源列表将类似,但是会将文件保存在源目录中。
我假设目录位于包含CMakeLists.txt的目录内。
此外,您还必须使用命令include_directories(dir)来通知要包含目录。
我在github上有个小例子:Simple separated includes and cpps.