PCL1.10.1+VS2019+Qt5.14.2下载、安装及配置(强迫症福音~使用的软件均为最新版本)

@[TOC]

前言

博主写该文章时,使用的三个软件均为最新版,踩了很多坑,先给大家探探路。吐血整理!

本人之前学习三维点云处理时安装过PCL,并且已经在VS2017中配置成功(应项目需求,需设计在Windows环境下运行的点云处理软件)。相比于Linux,在Windows环境下配置PCL会出现更多的问题,整个过程更复杂,当时也是收集了许多资料,踩了各种各样的坑,奈何疏于记录,整个流程和注意事项已忘了差不多了。现在更换了电脑需要重新配置PCL,各种操作需要从头再来。以防同样尴尬的事情再次出现,这次记录下整个下载、配置过程分享给大家,不仅是为了沉淀过程、积累经验以备不时之需;也是给遇到同样困惑的朋友们一个可参照的配置思路。

注意:因为本人现在使用的电脑已经安装好了VS2019Qt5.14,并且深度使用过一段时间(平常有需求做用户界面时,我是直接在Qt Creator上写相关的代码,没有试过在VS上实现Qt的代码。因此这次配置还要完成VS和Qt之间的连接)。这次就不考虑先卸载Qt和VS再安装三个软件,而是选择直接安装PCL,再对早已安装的VS和Qt进行扩展的思路来配置。相信有很多朋友和我的情况相同,毕竟学习也包含软件下载、软件扩展的过程

这次也是从一种特殊角度出发,记录安装、配置VS2019+Qt5.14+PCL的全过程。还没安装软件的可以搜下软件安装的教程,网上的帖子非常多,这里我就不重复了。

1 配置环境

  • Windows10 x64
  • Visual Studio 2019
  • Qt 5.14.2
  • PCL 1.10.1

2 准备工作

2.1 VS 2019 下载安装配置

如果没有安装过VS2019可以点击此处下载社区版(免费的)即可,具体安装步骤可以上网查询相关的帖子。

image

若早已安装使用了VS2019,可以从工具----获取工具和功能来管理安装的组件。
image

image

2.2 Qt 5.14.2 下载安装

2.2.1 本体组件管理

如果没有安装过Qt 5.14.2可以点击此处下载即可,具体安装步骤可以上网查询相关的帖子。

image

若早已安装使用了Qt,需要查看有没有安装msvc组件。我当时直接使用的Qt Creator,所以没有安装msvc组件。相比于VS,Qt的组件管理器没放在界面中,使用起来颇为麻烦。
在QT安装目录可以找到QT的组件管理软件MaintenanceTool
image

此时默认的存储库不能用,只能手动配置。手动添加​储存库要定位一个储存有Qt在线安装镜像的地址,http://download.qt.io/static/mirrorlist/这个网站,显示中国有四个镜像地址,挑选任意一个,点击HTTP进入一个网络文件夹。
进入最终文件夹/online/qtsdkrepository/windows_x86/root/qt/,复制当前地址。
image

利用复制的网址创建临时存储库
image

[图片上传失败...(image-4c62f3-1586141234867)]
可以开始管理你的组件了!
image

勾选上msvc2017 64-bit即可,目前组件还没有msvc2019选项,勾选2017也可以,亲测有效!其他组件怎么选择可以看这篇文章https://blog.csdn.net/WU9797/article/details/80991126
[图片上传失败...(image-85fa9-1586141234867)]

2.2.2 安装VS插件

下载插件vsaddin
https://download.qt.io/official_releases/vsaddin/

image

image

安装完成后重新打开VS2019,在扩展一栏下边就会出现Qt VS Tools,进入Qt Options
image

添加这两个编译器,设置msvc2017_64为默认编译器。
image

Qt和VS之间的配置已完成!

2.3 PCL 1.10.1 下载安装

2.3.1 本体安装

如果没有安装过Qt 5.14可以点击此处下载即可。下载AllInOnepdb文件

image

注意,在GitHub上看到的版本是PCL团队公布的最新版本1.10.1;在PCL官网上可下载的最新的为1.6.0版本。我还没去了解究竟是因为官网不再更新了还是说GitHub推出的只是测试版,本着买新不买旧的原则这次安装1.10.1版本的。

PCL库安装一般有两种方式:一种是下载PCL的所有第三方依赖库以及PCL的源代码后,自行进行编译安装(在Linux上实现非常便捷,只需要在终端上敲命令即可),这样做的好处是可以根据自己的需求修改源代码;另一种是利用AllInOne版本进行安装,所有依赖在安装PCL时自动安装了。本文采用第二种安装方式。

运行AllInOne文件

image

image

这里需要配置安装的其他库,如果自己不确定到底有没有其他的软件安装过相关的库,那么就全部都勾选了,否则库的缺失会导致点云库不能正常工作。
image

安装过程中,会跳出OpenNI2的单独安装对话框,将安装路径修改为 3rdParty/OpenNI2,即和其他 PCL 依赖的第三方库放在一起,然后继续,完成 PCL 的安装。
image

解压pcl-1.9.0-pdb-msvc2017-win64.zip,将解压得到的文件夹中的内容添加到你的PCL安装bin目录中。
安装到此结束!

2.3.2 手动编译VTK

PCL 依赖 VTK,在其 3rdParty 目录下可以看到 VTK。那为什么还要手动编译 VTK 呢?这是因为,PCL 安装目录下的 VTK 并不完整,其中就少了与 Qt 相关的模块(比如 QVTKWidget)。所以我们需要手动编译 VTK,并替换 PCL 3rdParty 下的 VTK

可以发现,PCL1.9.1 依赖 VTK8.2,所以我们编译这个版本的 VTK(如果你使用的是其他版本的 PCL,请编译对应版本的 VTK)。可以在 VTK Github 下的 release 页面获取对应版本的 VTK 源码。在此之前,你需要先安装 cmake ,用于生成平台相关的解决方案。

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

image

单击 Configure 进行配置,根据安装的 Visual Studio 的版本选择对应的生成器,选择 x64 平台。然后开始配置。
在这里插入图片描述

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

然后就会提示 Qt5_DIR NOT FOUND,所以,将该缓存变量设置为 Qt cmake 目录,在我的电脑上该目录为 D:\Qt\Qt5.14.2\5.14.2\msvc2017_64\lib\cmake\Qt5(具体根据 Qt 的版本和安装目录进行合适的设置)。将 VTK_QT_VERSION 设置为 5
image

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

image

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

PCL1.10.1+VS2019+Qt5.14.2 安装及配置到此基本结束。

3 环境变量设置

在这里插入图片描述

最后还需要进行环境变量设置(如已添加则忽略,可以添加在系统变量中,这样每个用户不用单独地设置):

  • PCL_ROOT
    指向 PCL 安装根目录(示例:C:\Program Files\PCL1.10.1)。

  • QTDIR
    指向 QT 安装根目录(示例:D:\Qt\Qt5.14.2)。

  • 在 PATH 环境变量添加以下值:
    %PCL_ROOT%\bin
    %PCL_ROOT%\3rdParty\FLANN\bin
    %PCL_ROOT%\3rdParty\VTK\bin
    %PCL_ROOT%\3rdParty\Qhull\bin
    %PCL_ROOT%\3rdParty\OpenNI2\Tools

以上就是 PCL1.10.1+VS2019+Qt5.14 下载、安装及配置方法了,希望对大家有所帮助~

如果觉得我的文章对你起到了些许的帮助,做下手指操点击下面的大拇指感谢~
我是专注自动驾驶、Lidar感知、三维点云处理、激光SLAM领域的阿川,欢迎各位志同道合的朋友在下面积极留言。欲将心事付瑶琴,希望能在交流中收获知识、经验和挚友

你可能感兴趣的:(PCL1.10.1+VS2019+Qt5.14.2下载、安装及配置(强迫症福音~使用的软件均为最新版本))