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

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

本文关键字:c++ 文件 依赖 VTK Cmake 编译      更新时间:2023-10-16

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

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

代码示例:

Main:

#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"

A级:

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

B.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})