ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

VS2019+QT5.9+PCL1.8.1环境配置

2022-08-26 12:31:23  阅读:184  来源: 互联网

标签:QT5.9 VS2019 VTK 选择 编译 PCL1.8 https Qt


1.1 软件环境及下载地址:

VS2019社区版:https://visualstudio.microsoft.com/zh-hans/vs/older-downloads/

Qt5.9.3https://download.qt.io/archive/qt/5.9/5.9.3/qt-opensource-windows-x86-5.9.3.exe.mirrorlist

PCL1.8.1https://github.com/PointCloudLibrary/pcl/releases/tag/pcl-1.8.1

VTK8.0.0https://gitlab.kitware.com/vtk/vtk/tree/v8.0.0

Cmake 3.23.2https://cmake.org/download/

1.1.1 安装

VS2019社区版:安装简单,不再赘述。

Qt5.9.3:安装简单,不再赘述。

PCL1.8.1:安装简单,不再赘述,注意添加PCL和第三方库的include、bin、lib,需要特别注意的是,为了在界面上显示PCL点云,官方自带的VTK库功能并不完整,需要对VTK8.0.0进行重新编译。

CMake 3.23.2:注意选择最新版本的,这样才能与VS2019匹配,注意CMake的路径配置。

1.2 环境配置

1.1.1 VS2019 Qt插件

为了能在vs2019上进行Qt编译,需要下载扩展工具Qt Visual Studio Tools,本文选择版本为2.8.1.6,需要注意的是可能在线安装网速较慢,可以自行前往https://download.qt.io/archive/vsaddin/下载。

1.1.1 VTK8.0.0配置

1、打开CMake GUI,在下载好的VTK文件夹内,创建一个空文件夹VTK_build,然后选择vtk进行编译。

2、为了区分编译出来的vtk Debug/Release版本,按下图进行设置。

 

3、设置完成后选择Configure,编译器选择2019,位数为X64。

 

4、等待一段时间之后,经行CMake编译选择,BUILD选择:只勾选BUILD_SHARED_LIBS,VTK_Group_Qt勾选

 

 

【注意】VTK_RENDERING_BACKEND这一项中,一定要选择OpenGL,不要选择默认的OpenGL2,否则后续Qt界面显示时,会出现OpenGL不兼容。

确认完成之后点击Configure,继续进行编译,此时会出现

 

不要慌,点击OK之后确定VTK_QT_VERSION版本,选择5之后,继续Configure。

 

此时,编译完成,点击Generate,之后,会在VTK_build文件夹下创建VTK.sln文件,此时用VS2019打开。

在解决方案管理器中打开CMakePredefinedTarget >> ALL_BUILD右键单击生成,此时会进行漫长的等待过程。

5、批生成:vs2019 >> 生成 >> 批生成,选择Release和Debug版本。

6、库替换,将原来PCL里面的VTK直接删除或者备份,将编译出来的Release和Debug版本替换进去,注意环境路径的配置。

此时将-gd文件夹内的文件完全复制到PCL\3rdParty\VTK替换即可。

1.1.1 Qt+PCL显示控件

在替换出来的文件夹中找到QVTKWidgetPlugin.dll,将此库文件替换到mscv2017_64/plugins/designer中,根据你的编译器版本选择msvc。

此时打开UI文件中,便会有QVTKWidgt控件。

 

标签:QT5.9,VS2019,VTK,选择,编译,PCL1.8,https,Qt
来源: https://www.cnblogs.com/indulge-code/p/16627191.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有