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下面就可以了。
(后面再详细讲解这部分)
QT安装说明
QT安装非常简单,5.14.2直接去楼主提供的地址下载。然后选择全部安装就可以了。(MSVC2017 64-bit 必须勾选,没有MSVC2019)安装完成后可以把需要使用的编译环境添加到系统Path里面
(此处暂时略过,下次再补上更详细教程。)这里重点讲下需要配置你编译环境的目录。否则你调试程序或者不打包程序直接运行就会提示缺少xxx.dll
VS2019安装说明
必须安装的两个选项,一个是使用c++进行桌面开发,一个是.net SDK(版本随意)否则会出现后面意想不到的情况。
VTK编译说明
VTK分为两部分,一个是VTKsource(必须)一个是VTKdata(非必须)
1.新建三个目录
把下载好的VTK-8.2.0.zip解压,放在VTK-source里面
VTK-build
VTK-install
VTK-source
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
3.部署Cmake环境
点击完成(Finish)后会出现一些红色的条目,现在开始配置Cmake环境
(在Search中输入相对于的配置项名称)
勾选 BUILD_EXAMPLES
编译VTK自带的示例文件。(非必须,如果不需要的话可以不选。这样会大幅度减少后续使用vs编译时的时间)
勾选 BUILD_SHARED_LIBS
VTK-8.2.0默认是勾选的。作用:生成动态共享库DLL。)
配置 CMAKE_INSTALL_PREFIX
VTK库要安装的位置,VTK编译后生成的库文件所在位置)
勾选 VTK_Group_Qt (使用Qt必须要勾选)
配置 CMAKE_DEBUG_POSTFIX
(添加_d这样进行Debug版本编译时会在库文件名后面多个_d)
配置 VTK_DATA_STORE
(如果你下载了VTK-8.2.0-Data,在VTK_DATA_STORE中可以选择VTK-8.2.0-Data所在的路径) 这里楼主没填路径
清空搜索栏
执行完以上步骤以后再次点击Config。
点击后会发现还有很多红色的提示,继续修改。
这里报错了一个找不到Qt路径的错误提示
解决办法直接手动配置一下绝对路径。
确认VTK_QT_VERSION 版本为5,通常都是然后再次点击Config
执行完以上步骤以后再次点击Config。
勾选 QVTKOpenGLNativeWidget
执行完以上步骤以后再次点击Config。
出现下面红色提示路径不对
手动指定路径
再次点击Config。
发现现在已经没有报红了,点击Generate生成工程。
(如果没有变成白色要检查红色条目到底对不对,直到出现Configuring done)
下图出现Generate done
4.以管理员身份运行Visual Studio 2019 编译VTK
以管理员身份运行Visual Studio 2019后
选择打开刚刚生成的项目VTK.sln
项目已经加载完毕后。
选择【生成】–>【批生成】。
选择ALL_BUILD Release x64 栏 勾选 √---->点击【生成】。
(一般需要1-3小时左右,根据电脑配置决定。)
出现报错
解决办法(参阅:VS2019添加引用出错:对COM组件的调用返回了错误HRESULT E_FAIL(未能完成操作。未指定的错误))
解决报错后,重复生成步骤。
完成All_BUILD的生成
选择【生成】–>【批生成】。
把刚刚勾选的ALL_BUILD Release后面的√去掉,下拉找到
INSTALL Release 勾选 √---->点击【生成】。
(一般需要10分钟左右,根据电脑配置决定。)
Release 文件生成后把生成的文件夹重命名成为VTK-install-Release
然后新建一个VTK-install 用来生成Debug文件
重复上述步骤生成Debug相关文件
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控件
新建工程测试VTK
未完,,,待续