PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

前期准备

PCL源码 (PCL-1.11.0-AllInOne-msvc2019-win64) https://github.com/PointCloudLibrary/pcl/releases
VTK源码(8.2.0) https://vtk.org/download/
Cmake(cmake-3.18.0-rc2) https://cmake.org/download/
VS2019(专业版) https://visualstudio.microsoft.com/zh-hans/downloads/
QT(5.14.2) https://www.qt.io/download

这里楼主采用的基本都是最新版本,编译环境只要在这个版本以上基本上通用

PCL安装说明

新机器直接下载两个文件后,默认安装。环境变量选择给所有用户使用。
然后把pdb文件解压放在PCL1.11.0安装目录的bin下面就可以了。
(后面再详细讲解这部分)
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

QT安装说明

QT安装非常简单,5.14.2直接去楼主提供的地址下载。然后选择全部安装就可以了。(MSVC2017 64-bit 必须勾选,没有MSVC2019)安装完成后可以把需要使用的编译环境添加到系统Path里面
(此处暂时略过,下次再补上更详细教程。)这里重点讲下需要配置你编译环境的目录。否则你调试程序或者不打包程序直接运行就会提示缺少xxx.dll

PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

VS2019安装说明

必须安装的两个选项,一个是使用c++进行桌面开发,一个是.net SDK(版本随意)否则会出现后面意想不到的情况。
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

VTK编译说明

VTK分为两部分,一个是VTKsource(必须)一个是VTKdata(非必须)

1.新建三个目录

把下载好的VTK-8.2.0.zip解压,放在VTK-source里面

VTK-build
VTK-install
VTK-source
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

2.以管理员身份运行Cmake

以管理员身份运行Cmake-GUI
选择我们对应的Vtk路径即:

C:/VTK-8.2.0/VTK-source
C:/VTK-8.2.0/VTK-build

选中Grouped(分组模式)和Advanced(高级设置)
然后点击Configure 选择 Visual studio 16 2016 和x64
再点击Finish 然后点击Configure
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

3.部署Cmake环境

点击完成(Finish)后会出现一些红色的条目,现在开始配置Cmake环境
(在Search中输入相对于的配置项名称)

勾选 BUILD_EXAMPLES
编译VTK自带的示例文件。(非必须,如果不需要的话可以不选。这样会大幅度减少后续使用vs编译时的时间)
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

勾选 BUILD_SHARED_LIBS
VTK-8.2.0默认是勾选的。作用:生成动态共享库DLL。)
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

配置 CMAKE_INSTALL_PREFIX
VTK库要安装的位置,VTK编译后生成的库文件所在位置)
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

勾选 VTK_Group_Qt (使用Qt必须要勾选)
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

配置 CMAKE_DEBUG_POSTFIX
(添加_d这样进行Debug版本编译时会在库文件名后面多个_d)
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

配置 VTK_DATA_STORE
(如果你下载了VTK-8.2.0-Data,在VTK_DATA_STORE中可以选择VTK-8.2.0-Data所在的路径) 这里楼主没填路径
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

清空搜索栏
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

执行完以上步骤以后再次点击Config。
点击后会发现还有很多红色的提示,继续修改。

这里报错了一个找不到Qt路径的错误提示
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget
解决办法直接手动配置一下绝对路径。
确认VTK_QT_VERSION 版本为5,通常都是然后再次点击Config
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

执行完以上步骤以后再次点击Config。

勾选 QVTKOpenGLNativeWidget
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

执行完以上步骤以后再次点击Config。

出现下面红色提示路径不对
手动指定路径
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

再次点击Config。

发现现在已经没有报红了,点击Generate生成工程。
(如果没有变成白色要检查红色条目到底对不对,直到出现Configuring done)
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

下图出现Generate done
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

4.以管理员身份运行Visual Studio 2019 编译VTK

以管理员身份运行Visual Studio 2019后
选择打开刚刚生成的项目VTK.sln
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

项目已经加载完毕后。
选择【生成】–>【批生成】。
选择ALL_BUILD Release x64 栏 勾选 √---->点击【生成】。
(一般需要1-3小时左右,根据电脑配置决定。)
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget
出现报错
解决办法(参阅:VS2019添加引用出错:对COM组件的调用返回了错误HRESULT E_FAIL(未能完成操作。未指定的错误)PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

解决报错后,重复生成步骤。
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget
完成All_BUILD的生成

选择【生成】–>【批生成】。
把刚刚勾选的ALL_BUILD Release后面的√去掉,下拉找到
INSTALL Release 勾选 √---->点击【生成】。
(一般需要10分钟左右,根据电脑配置决定。)
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget
Release 文件生成后把生成的文件夹重命名成为VTK-install-Release
然后新建一个VTK-install 用来生成Debug文件
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

重复上述步骤生成Debug相关文件

PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget
Debug相关文件生成成功

5.给Qt添加QVTKOpenGLNativeWidget

将VTK生成的 Release 版本下
C:\VTK-8.2.0\VTK-install\Release\plugins\designer\QVTKWidgetPlugin.dll
C:\VTK-8.2.0\VTK-build\lib\Release\QVTKWidgetPlugin.exp与
QVTKWidgetPlugin.lib
复制到 Qt Creator的C:\Qt\Qt5.14.2\5.14.2\msvc2017_64\plugins\designer文件夹下。
此时单独打开Qt Designer就会发现最下面有一个QVTKWidget控件
PCL1.11.0+VTK8.2.0+QT5.14.2+VS2019在Win10环境下的配置(小白必看!)QVTKOpenGLNativeWidget

新建工程测试VTK

未完,,,待续