VS+PCL+QT+VTK开发环境搭建

时间:2024-03-20 15:50:53

一,VS2017+PCL1.8.1安装及环境配置

按照我之前的这个配置即可:https://blog.csdn.net/yzk1062913581

 

二,QT+VS环境配置

安装QT,自己去官网下载即可;

                                    http://download.qt.io/

在安装组件选择时,根据 Visual Studio 的版本选择对应的 Qt,在此选择 MSVC 2017 64-bit,其他组件可以按需选择。

VS2017+PCL+QT+VTK开发环境搭建

耐心等待 Qt 安装完成即可。

然后为 Visual Studio 安装 qt addin 插件,在下面的下载链接中下载插件文件,后缀名为 .vsix ,双击完成安装。重新打开 Visual Studio,可以在菜单栏上看到 QT VS Tools 菜单。 

https://download.qt.io/development_releases/vsaddin/

VS2017+PCL+QT+VTK开发环境搭建

安装完成后,打开 Visual Studio 进行 Qt 配置。打开 Qt VS Tools - Qt Options,设置对应 Qt 版本及路径。

VS2017+PCL+QT+VTK开发环境搭建 

 

三,VTK编译安装以及环境配置

源码下载:可以上官网下载(速度很慢),这里我提供了下载地址:https://pan.baidu.com/s/1Ngkw4OQ7ZvwZgrr51Nc-bQ

PCL1.8.1对应的VTK版本是VTK8.0.0,一定要下载PCL相对应的VTK版本。

PCL 依赖 VTK,在其 3rdParty 目录下可以看到 VTK。那为什么还要自己手动编译 VTK 呢

答:这是因为,PCL 安装目录下的 VTK 并不完整,其中就少了与 Qt 相关的模块,而这些模块是 CloudViewer 编译运行所需要的(如 QVTKWidget)。所以我们需要手动编译 VTK,并替换 PCL 3rdParty 下的 VTK。

第一步:编译

1)首先将 VTK 源码解压,打开 cmake-gui(自行安装),设置源码目录(此处即为 VTK 源码目录)和生成目录。并使用 Add Entry 按钮添加缓存变量 CMAKE_DEBUG_POSTFIX,类型为 STRING,值设置为 -gd。这是为了将最后编译的 debug 文件与 release 文件区分开来。

VS2017+PCL+QT+VTK开发环境搭建

单击 Configure 进行配置,根据安装的 Visual Studio 的版本选择对应的生成器,选择 x64 平台。然后开始配置。

VS2017+PCL+QT+VTK开发环境搭建

配置过程中,cmake 会检测当前环境,编译器等,并生成缓存变量。第一次配置完成后,需要对一些缓存变量进行修改,如 CMAKE_INSTALL_PREFIX,它规定了最后构建的 VTK 安装在什么地方,这个目录可以随意选择,到时候拷贝到 PCL 3rdParty 目录下即可。此外,可以选择需要构建的内容:BUILD_DOCUMENTATIONBUILD_EXAMPLESBUILD_SHARED_LIBSBUILD_TESTING。考虑到项目并没有直接使用 VTK,而只是用于替换 PCL 中的 VTK,所以只勾选了 BUILD_SHARED_LIBS,不对文档、实例和测试进行生成,这样可以节省生成和构建的时间。另外一个比较重要的是,要勾选 VTK_Group_Qt。具体如下图所示,单击 Configure,进行配置。

VS2017+PCL+QT+VTK开发环境搭建

VS2017+PCL+QT+VTK开发环境搭建

VS2017+PCL+QT+VTK开发环境搭建

然后可能会提示 Qt5_DIR NOT FOUND,所以,将该缓存变量设置为 Qt cmake 目录(具体根据 Qt 的版本和安装目录进行合适的设置)。将 VTK_QT_VERSION 设置为 5。

VS2017+PCL+QT+VTK开发环境搭建

2) 然后 Configure,配置完成后,开始 Generate,生成完毕后,可以在生成目录下发现 Visual Studio 解决方案。打开解决方案,其中包含了上百个项目,默认是 Debug x64 模式,右击 ALL_BUILD 项目,选择生成,生成完成后,右击 INSTALL 项目,选择生成,即开始安装,将生成 debug 库文件。待构建完成后,切换为 Release x64 模式,按同样的操作,生成 release 库文件(构建过程比较耗时,大概需要 1 个小时左右)。最终完成 VTK 的构建,可以在先前配置的安装目录下找到构建好的文件。

3)最后,将构建好的整个目录拷贝至 PCL 3rdParty 目录下,更名为 VTK,替换掉原来的 VTK。此外,为了能够在 Qt Designer 中使用 QVTKWidget 控件,将 PCL_ROOT/3rdParty/VTK/plugins/designer/QVTKWidget.dll 拷贝至 QTDIR/Qt5.10.1/5.10.1/msvc2017_64/plugins/designer 目录下(PCL_ROOT 和 QTDIR 分别是 PCL 和 Qt 的安装根目录,具体目录设置根据软件版本和安装路径而定)。

 

第二步:环境配置

添加以下环境变量(如已添加则忽略)。

  • PCL_ROOT

    指向 PCL 安装根目录(示例:D:\Program Files\PCL 1.8.1)。

  • QTDIR

    指向 QT 安装根目录(示例:D:\Program\Qt\Qt5.10.1)。

在 PATH 环境变量添加以下值:

  • %PCL_ROOT%\bin
  • %PCL_ROOT%\3rdParty\FLANN\bin
  • %PCL_ROOT%\3rdParty\VTK\bin
  • %PCL_ROOT%\3rdParty\Qhull\bin
  • %PCL_ROOT%\3rdParty\OpenNI2\Tools