Cmake 编译具有 VTK 依赖性的目录中的所有 c++ 文件

Cmake compile all c++ files in directory with VTK dependency

我有一个主文件和两个 类 C++,它们都使用 VTK 库。

我知道如何编译一个文件,我的 CMakeLists 应该如何编译它们?

代码示例:

主要:

#include <vtkImageData.h>
#include <vtkMetaImageReader.h>
#include <vtkSmartPointer.h>
#include "ClassA.h"
#include "ClassB.h"

ClassA.cpp:

#include "ClassA.h"

ClassB.cpp:

#include "ClassB.h"

ClassA.h:

#include <vector>
#include "vtkImageData.h"

ClassB.h:

#include <vector>
#include <string>
#include <sstream>
#include "vtkImageData.h"
#include "vtkMetaImageWriter.h"

您的 CMakeLists.txt 可能如下所示:

cmake_minimum_required(VERSION 2.8)

PROJECT(MyProject)

find_package(VTK REQUIRED)
include(${VTK_USE_FILE})

add_executable(MyExecutable main.cpp ClassA.cpp ClassB.cpp)

target_link_libraries(MyExecutable ${VTK_LIBRARIES})