Visual Studio 2022+Cmake+VTK

想自学以上内容,网上教程很多:

记录一下VS2022+Qt5.15.2+CMake3.23.2编译VTK 8.2.0套件的过程_面包不要的博客-CSDN博客

上面这个很详细,不过估计版本较老,没有成功

Compiling VTK Using CMake and Visual Studio - programming

上面这个是国外的,主要是照着这个一步步弄下来的,略有改动。

系统:Windows 8.1(Visual studio说是要装在Win10上的,我的系统升级不了);VS2022 Community;CMake(cmake-3.24.0-rc3-windows-x86_64);VTK(VTK-9.2.0.rc1.tar.gz;    VTKData-9.2.0.rc1.tar.gz(非必需?))

另很多教程里要装Qt,我这里没有装。

Visual Studio: 面向软件开发人员和 Teams 的 IDE 和代码编辑器

Download | VTK

无论中文还是英文,都强调文件路径里不要有奇怪的字符,我都是直接装在C或D盘下面

1、CMake下处理

D盘下新建一个文件夹“VTK”;

将VTK(VTK-9.2.0.rc1.tar.gz)解压到D盘下,将解压后的文件夹命名为 “VTK-9.2.0”;

同时新建一个文件夹“Build

Visual Studio 2022+Cmake+VTK_第1张图片

 打开CMake

Visual Studio 2022+Cmake+VTK_第2张图片

 通过"Browse Source"和"Browse Build"设置如上;将Grouped,Advanced勾选

点击"Configure"

主要目的是将上图红色区域设置好(让它不红)

之后的设置可能因CMake版本不同而不同;比如我的CMake里 VTK_DATA_STORE;VTK_DATA_ROOT就没有这个选项,这里面有的是添加前面下载的“ VTKData”所在路径(这个可能主要是提供示例的,所以并非必需)。

重点:“CMAKE_INSTALL_PREFIX”默认设置是"C:\Program Files (X86)\VTK"改成 "C:\VTK\"(在C盘下建一个“VTK”文件夹)

其余选项看情况,比如说“BUILD_EXAMPLES”勾不选估计无关紧要,我是勾选了。

点击"Configure",确保红色区域都不红了。

之后点击“Generate”。

这时你打开“C:\VTK\”这个文件夹,你会发现这个文件夹还是空的(所以CMake在此对这个文件夹主要是设置路径的一个作用,这个文件夹之后还会用到);“D:\VTK\Build”有新文件生成。

2. VS2022下的设置

用VS打开“D:\VTK\Build”文件夹下的"ALL_BUILD.vcproj"

Visual Studio 2022+Cmake+VTK_第3张图片

选择“Release

右键“ALL_BUILD” 点击“生成”(要很久)

Visual Studio 2022+Cmake+VTK_第4张图片

 右键“INSTALL”点击生成(也要很久)

Visual Studio 2022+Cmake+VTK_第5张图片

 这步之后你会发现你的“C:\VTK\”这个文件夹下有新文件生成(就是之前设置“CMAKE_INSTALL_PREFIX”的文件夹)

Visual Studio 2022+Cmake+VTK_第6张图片

 3.VS下测试你的VTK是否可用

文件-->新建-->项目(这里我的项目叫“TestVTK”)

Visual Studio 2022+Cmake+VTK_第7张图片

 将所建项目文件中的“源文件”里的CPP文件代码(替换框内部分)改为如下(红色是添加部分源自“VTK图形图像开发进阶”这本书;删除打印“Hello world!”那行代码,估计不删也没关系)

Visual Studio 2022+Cmake+VTK_第8张图片

#include
#include
#include

int main()
{
    
    vtkSmartPointer renWin =
        vtkSmartPointer::New();
    renWin->Render();

    renWin->SetWindowName("TestVTKInstall");
    renWin->SetSize(640, 480);
    renWin->Render();

    std::cin.get();
    return EXIT_SUCCESS;

}

右键点击的项目TestVTK-->属性

Visual Studio 2022+Cmake+VTK_第9张图片

C/C++ ->常规 ->附加包含目录设置为 C:\VTK\include\vtk-9.2 

Visual Studio 2022+Cmake+VTK_第10张图片

 链接器 ->常规 ->附加库目录设置为  "C:\VTK\lib" 

 Visual Studio 2022+Cmake+VTK_第11张图片

 链接器 ->输入 ->附加依赖项 

添加你要的库(小白不知道怎么选,很多说明因为版本不同,库的名字也不同)我的方法是在 "C:\VTK\lib" 下 新建1.TXT文件,打开后输入“DIR *.* /B >数据.TXT”保存,修改后缀,改为1.bat 双击运行。生成的“数据.TXT”文件里即包含所有文件名,删除其中不是以“.lib”结尾的名字。拷贝所有.lib结尾的文件名,添加到下下图的框里。

Visual Studio 2022+Cmake+VTK_第12张图片

Visual Studio 2022+Cmake+VTK_第13张图片

 一路确定之后,运行程序,可弹出对话框同时报错如下。 

 Visual Studio 2022+Cmake+VTK_第14张图片

Visual Studio 2022+Cmake+VTK_第15张图片 上图源自“VTK图形图像开发进阶”;

进行如下设置 

工作目录 设置为 “D:\VTK\Build\bin\Release ”,如下

Visual Studio 2022+Cmake+VTK_第16张图片

再运行工程,就没错了。。。。。

以上工作,搞了一周的所有晚上,记录一下,以防后面自己忘记,可能有错误,仅供有需要者参考!

运行以上代码可能没有错误 没有弹窗 需初始化 添加如下代码

#include
VTK_MODULE_INIT(vtkRenderingOpenGL2);
VTK_MODULE_INIT(vtkInteractionStyle);
VTK_MODULE_INIT(vtkRenderingFreeType);

你可能感兴趣的:(visual,studio,c++)