当前位置: 首页 > news >正文

Windows11+VS2022+PCL1.15.1安装和配置流程

一、下载安装VS2022

打开下面网址:

Downloads & Keys - Visual Studio Subscriptions

选择下载Visual Studio Enterprise 2022

更改安装的位置,选择一些安装模块,例如【使用C++的桌面开发】

二、下载安装PCL1.15.1

1、打开PCL的GitHub

Release PCL 1.15.1 · PointCloudLibrary/pcl · GitHub

2、下载两个文件

文件1:PCL-1.15.1-AllInOne-msvc2022-win64.exe

文件2:pcl-1.15.1-pdb-msvc2022-win64.zip

3、安装PCL-1.15.1-AllInOne-msvc2022-win64.exe

(1)选择Add PCL to the system PATH for all users

(2)安装目录改为除C盘以外的位置

(3)选定安装的组件

选择所有

4、重新安装OpenNI2

(1)在PCL 1.15.1\3rdParty\OpenNI2目录下,双击安装包OpenNI-Windows-x64-2.2

(2)点击 【Remove】卸载C盘目录下的OpenNI,然后重新选择新的安装路径进行安装。

新的安装路径放在跟PCL 1.15.1相同目录下的3rdParty\OpenNI2

5、安装pcl-1.15.1-pdb-msvc2022-win64.zip

(1)解压pcl-1.15.1-pdb-msvc2022-win64.zip

(2)将解压出来的.pdb文件拷贝到PCL 1.15.1\bin目录下

5、添加环境变量

添加以下环境变量

D:\Program Files\PCL 1.15.1\bin
D:\Program Files\PCL 1.15.1\3rdParty\VTK\bin
D:\Program Files\PCL 1.15.1\3rdParty\FLANN\bin
D:\Program Files\PCL 1.15.1\3rdParty\Qhull\bin
D:\Program Files\PCL 1.15.1\3rdParty\OpenNI2\Tools
D:\Program Files\PCL 1.15.1\3rdParty\OpenNI2\Redist
D:\Program Files\PCL 1.15.1\3rdParty\OpenNI2\Include
D:\Program Files\PCL 1.15.1\3rdParty\OpenNI2\Lib

三、配置VS2022的开发环境

1、创建空项目

2、调出【属性管理器 】

3、添加新项目属性表

以【Debug|x64】为例,右键Debug|x64,选择【添加新项目属性表】

4、在【VC++目录】——【包含目录】下添加头文件夹

包含目录如下:

D:\Program Files\PCL 1.15.1\include\pcl-1.15\pcl\io
D:\Program Files\PCL 1.15.1\include\pcl-1.15
D:\Program Files\PCL 1.15.1\include
D:\Program Files\PCL 1.15.1
D:\Program Files\PCL 1.15.1\3rdParty\Boost\include\boost-1_87
D:\Program Files\PCL 1.15.1\3rdParty\Eigen3\include\eigen3
D:\Program Files\PCL 1.15.1\3rdParty\Eigen3\include\eigen3\Eigen
D:\Program Files\PCL 1.15.1\3rdParty\Eigen3\include\eigen3\unsupported
D:\Program Files\PCL 1.15.1\3rdParty\Eigen3\include\eigen3\unsupported\Eigen
D:\Program Files\PCL 1.15.1\3rdParty\FLANN\include\flann
D:\Program Files\PCL 1.15.1\3rdParty\FLANN\include
D:\Program Files\PCL 1.15.1\3rdParty\OpenNI2\Include
D:\Program Files\PCL 1.15.1\3rdParty\Qhull\include\libqhullcpp
D:\Program Files\PCL 1.15.1\3rdParty\Qhull\include\libqhull_r
D:\Program Files\PCL 1.15.1\3rdParty\Qhull\include\libqhull
D:\Program Files\PCL 1.15.1\3rdParty\Qhull\include
D:\Program Files\PCL 1.15.1\3rdParty\VTK\include
D:\Program Files\PCL 1.15.1\3rdParty\VTK\include\vtk-9.4

5、在【VC++目录】——【库目录】下添加lib文件夹

lib文件夹如下:

D:\Program Files\PCL 1.15.1\lib
D:\Program Files\PCL 1.15.1\3rdParty\Boost\lib
D:\Program Files\PCL 1.15.1\3rdParty\FLANN\lib
D:\Program Files\PCL 1.15.1\3rdParty\OpenNI2\Lib
D:\Program Files\PCL 1.15.1\3rdParty\Qhull\lib
D:\Program Files\PCL 1.15.1\3rdParty\VTK\lib

6、在【链接器】——【输入】——【附加依赖项】下添加lib文件

(1)注意

①如果是debug模式,则添加debug的lib文件;如果是release模式,则添加 release的lib文件。

②需要添加PCL 1.15.1\lib目录和PCL 1.15.1\3rdParty\VTK\lib 里面的lib文件。

(2)导出lib文件名的方式

①导出debug相关的lib文件名:

在lib文件目录下,打开cmd,输入

dir/b *d.lib >debug.txt

会在lib文件目录下生成debug.txt文件,里面保存了debug相关的lib文件名

②导出release相关 的lib文件名:

在lib文件目录下,打开cmd,输入

dir /b | findstr /R /E /I ".*[^d]\.lib$" > release.txt

会在lib文件目录下生成release.txt文件,里面保存了release相关的lib文件名

(3)debug文件如下

pcl_commond.lib
pcl_featuresd.lib
pcl_filtersd.lib
pcl_iod.lib
pcl_io_plyd.lib
pcl_kdtreed.lib
pcl_keypointsd.lib
pcl_mld.lib
pcl_octreed.lib
pcl_outofcored.lib
pcl_peopled.lib
pcl_recognitiond.lib
pcl_registrationd.lib
pcl_sample_consensusd.lib
pcl_searchd.lib
pcl_segmentationd.lib
pcl_stereod.lib
pcl_surfaced.lib
pcl_trackingd.lib
pcl_visualizationd.lib
vtkcgns-9.4-gd.lib
vtkChartsCore-9.4-gd.lib
vtkCommonColor-9.4-gd.lib
vtkCommonComputationalGeometry-9.4-gd.lib
vtkCommonCore-9.4-gd.lib
vtkCommonDataModel-9.4-gd.lib
vtkCommonExecutionModel-9.4-gd.lib
vtkCommonMath-9.4-gd.lib
vtkCommonMisc-9.4-gd.lib
vtkCommonSystem-9.4-gd.lib
vtkCommonTransforms-9.4-gd.lib
vtkDICOMParser-9.4-gd.lib
vtkDomainsChemistry-9.4-gd.lib
vtkDomainsChemistryOpenGL2-9.4-gd.lib
vtkdoubleconversion-9.4-gd.lib
vtkexodusII-9.4-gd.lib
vtkexpat-9.4-gd.lib
vtkFiltersAMR-9.4-gd.lib
vtkFiltersCellGrid-9.4-gd.lib
vtkFiltersCore-9.4-gd.lib
vtkFiltersExtraction-9.4-gd.lib
vtkFiltersFlowPaths-9.4-gd.lib
vtkFiltersGeneral-9.4-gd.lib
vtkFiltersGeneric-9.4-gd.lib
vtkFiltersGeometry-9.4-gd.lib
vtkFiltersGeometryPreview-9.4-gd.lib
vtkFiltersHybrid-9.4-gd.lib
vtkFiltersHyperTree-9.4-gd.lib
vtkFiltersImaging-9.4-gd.lib
vtkFiltersModeling-9.4-gd.lib
vtkFiltersParallel-9.4-gd.lib
vtkFiltersParallelImaging-9.4-gd.lib
vtkFiltersPoints-9.4-gd.lib
vtkFiltersProgrammable-9.4-gd.lib
vtkFiltersReduction-9.4-gd.lib
vtkFiltersSelection-9.4-gd.lib
vtkFiltersSMP-9.4-gd.lib
vtkFiltersSources-9.4-gd.lib
vtkFiltersStatistics-9.4-gd.lib
vtkFiltersTemporal-9.4-gd.lib
vtkFiltersTensor-9.4-gd.lib
vtkFiltersTexture-9.4-gd.lib
vtkFiltersTopology-9.4-gd.lib
vtkFiltersVerdict-9.4-gd.lib
vtkfmt-9.4-gd.lib
vtkfreetype-9.4-gd.lib
vtkGeovisCore-9.4-gd.lib
vtkgl2ps-9.4-gd.lib
vtkglad-9.4-gd.lib
vtkhdf5-9.4-gd.lib
vtkhdf5_hl-9.4-gd.lib
vtkImagingColor-9.4-gd.lib
vtkImagingCore-9.4-gd.lib
vtkImagingFourier-9.4-gd.lib
vtkImagingGeneral-9.4-gd.lib
vtkImagingHybrid-9.4-gd.lib
vtkImagingMath-9.4-gd.lib
vtkImagingMorphological-9.4-gd.lib
vtkImagingSources-9.4-gd.lib
vtkImagingStatistics-9.4-gd.lib
vtkImagingStencil-9.4-gd.lib
vtkInfovisCore-9.4-gd.lib
vtkInfovisLayout-9.4-gd.lib
vtkInteractionImage-9.4-gd.lib
vtkInteractionStyle-9.4-gd.lib
vtkInteractionWidgets-9.4-gd.lib
vtkIOAMR-9.4-gd.lib
vtkIOAsynchronous-9.4-gd.lib
vtkIOCellGrid-9.4-gd.lib
vtkIOCesium3DTiles-9.4-gd.lib
vtkIOCGNSReader-9.4-gd.lib
vtkIOChemistry-9.4-gd.lib
vtkIOCityGML-9.4-gd.lib
vtkIOCONVERGECFD-9.4-gd.lib
vtkIOCore-9.4-gd.lib
vtkIOEngys-9.4-gd.lib
vtkIOEnSight-9.4-gd.lib
vtkIOERF-9.4-gd.lib
vtkIOExodus-9.4-gd.lib
vtkIOExport-9.4-gd.lib
vtkIOExportGL2PS-9.4-gd.lib
vtkIOExportPDF-9.4-gd.lib
vtkIOFDS-9.4-gd.lib
vtkIOFLUENTCFF-9.4-gd.lib
vtkIOGeometry-9.4-gd.lib
vtkIOHDF-9.4-gd.lib
vtkIOImage-9.4-gd.lib
vtkIOImport-9.4-gd.lib
vtkIOInfovis-9.4-gd.lib
vtkIOIOSS-9.4-gd.lib
vtkIOLegacy-9.4-gd.lib
vtkIOLSDyna-9.4-gd.lib
vtkIOMINC-9.4-gd.lib
vtkIOMotionFX-9.4-gd.lib
vtkIOMovie-9.4-gd.lib
vtkIONetCDF-9.4-gd.lib
vtkIOOggTheora-9.4-gd.lib
vtkIOParallel-9.4-gd.lib
vtkIOParallelXML-9.4-gd.lib
vtkIOPLY-9.4-gd.lib
vtkIOSegY-9.4-gd.lib
vtkIOSQL-9.4-gd.lib
vtkioss-9.4-gd.lib
vtkIOTecplotTable-9.4-gd.lib
vtkIOVeraOut-9.4-gd.lib
vtkIOVideo-9.4-gd.lib
vtkIOXML-9.4-gd.lib
vtkIOXMLParser-9.4-gd.lib
vtkjpeg-9.4-gd.lib
vtkjsoncpp-9.4-gd.lib
vtkkissfft-9.4-gd.lib
vtklibharu-9.4-gd.lib
vtklibproj-9.4-gd.lib
vtklibxml2-9.4-gd.lib
vtkloguru-9.4-gd.lib
vtklz4-9.4-gd.lib
vtklzma-9.4-gd.lib
vtkmetaio-9.4-gd.lib
vtknetcdf-9.4-gd.lib
vtkogg-9.4-gd.lib
vtkParallelCore-9.4-gd.lib
vtkParallelDIY-9.4-gd.lib
vtkpng-9.4-gd.lib
vtkpugixml-9.4-gd.lib
vtkRenderingAnnotation-9.4-gd.lib
vtkRenderingCellGrid-9.4-gd.lib
vtkRenderingContext2D-9.4-gd.lib
vtkRenderingContextOpenGL2-9.4-gd.lib
vtkRenderingCore-9.4-gd.lib
vtkRenderingFreeType-9.4-gd.lib
vtkRenderingGL2PSOpenGL2-9.4-gd.lib
vtkRenderingHyperTreeGrid-9.4-gd.lib
vtkRenderingImage-9.4-gd.lib
vtkRenderingLabel-9.4-gd.lib
vtkRenderingLICOpenGL2-9.4-gd.lib
vtkRenderingLOD-9.4-gd.lib
vtkRenderingOpenGL2-9.4-gd.lib
vtkRenderingSceneGraph-9.4-gd.lib
vtkRenderingUI-9.4-gd.lib
vtkRenderingVolume-9.4-gd.lib
vtkRenderingVolumeOpenGL2-9.4-gd.lib
vtkRenderingVtkJS-9.4-gd.lib
vtksqlite-9.4-gd.lib
vtksys-9.4-gd.lib
vtkTestingCore-9.4-gd.lib
vtkTestingRendering-9.4-gd.lib
vtktheora-9.4-gd.lib
vtktiff-9.4-gd.lib
vtktoken-9.4-gd.lib
vtkverdict-9.4-gd.lib
vtkViewsContext2D-9.4-gd.lib
vtkViewsCore-9.4-gd.lib
vtkViewsInfovis-9.4-gd.lib
vtkWrappingTools-9.4-gd.lib
vtkzlib-9.4-gd.lib

(4)release文件如下

vtkcgns-9.4.lib
vtkChartsCore-9.4.lib
vtkCommonColor-9.4.lib
vtkCommonComputationalGeometry-9.4.lib
vtkCommonCore-9.4.lib
vtkCommonDataModel-9.4.lib
vtkCommonExecutionModel-9.4.lib
vtkCommonMath-9.4.lib
vtkCommonMisc-9.4.lib
vtkCommonSystem-9.4.lib
vtkCommonTransforms-9.4.lib
vtkDICOMParser-9.4.lib
vtkDomainsChemistry-9.4.lib
vtkDomainsChemistryOpenGL2-9.4.lib
vtkdoubleconversion-9.4.lib
vtkexodusII-9.4.lib
vtkexpat-9.4.lib
vtkFiltersAMR-9.4.lib
vtkFiltersCellGrid-9.4.lib
vtkFiltersCore-9.4.lib
vtkFiltersExtraction-9.4.lib
vtkFiltersFlowPaths-9.4.lib
vtkFiltersGeneral-9.4.lib
vtkFiltersGeneric-9.4.lib
vtkFiltersGeometry-9.4.lib
vtkFiltersGeometryPreview-9.4.lib
vtkFiltersHybrid-9.4.lib
vtkFiltersHyperTree-9.4.lib
vtkFiltersImaging-9.4.lib
vtkFiltersModeling-9.4.lib
vtkFiltersParallel-9.4.lib
vtkFiltersParallelImaging-9.4.lib
vtkFiltersPoints-9.4.lib
vtkFiltersProgrammable-9.4.lib
vtkFiltersReduction-9.4.lib
vtkFiltersSelection-9.4.lib
vtkFiltersSMP-9.4.lib
vtkFiltersSources-9.4.lib
vtkFiltersStatistics-9.4.lib
vtkFiltersTemporal-9.4.lib
vtkFiltersTensor-9.4.lib
vtkFiltersTexture-9.4.lib
vtkFiltersTopology-9.4.lib
vtkFiltersVerdict-9.4.lib
vtkfmt-9.4.lib
vtkfreetype-9.4.lib
vtkGeovisCore-9.4.lib
vtkgl2ps-9.4.lib
vtkglad-9.4.lib
vtkhdf5-9.4.lib
vtkhdf5_hl-9.4.lib
vtkImagingColor-9.4.lib
vtkImagingCore-9.4.lib
vtkImagingFourier-9.4.lib
vtkImagingGeneral-9.4.lib
vtkImagingHybrid-9.4.lib
vtkImagingMath-9.4.lib
vtkImagingMorphological-9.4.lib
vtkImagingSources-9.4.lib
vtkImagingStatistics-9.4.lib
vtkImagingStencil-9.4.lib
vtkInfovisCore-9.4.lib
vtkInfovisLayout-9.4.lib
vtkInteractionImage-9.4.lib
vtkInteractionStyle-9.4.lib
vtkInteractionWidgets-9.4.lib
vtkIOAMR-9.4.lib
vtkIOAsynchronous-9.4.lib
vtkIOCellGrid-9.4.lib
vtkIOCesium3DTiles-9.4.lib
vtkIOCGNSReader-9.4.lib
vtkIOChemistry-9.4.lib
vtkIOCityGML-9.4.lib
vtkIOCONVERGECFD-9.4.lib
vtkIOCore-9.4.lib
vtkIOEngys-9.4.lib
vtkIOEnSight-9.4.lib
vtkIOERF-9.4.lib
vtkIOExodus-9.4.lib
vtkIOExport-9.4.lib
vtkIOExportGL2PS-9.4.lib
vtkIOExportPDF-9.4.lib
vtkIOFDS-9.4.lib
vtkIOFLUENTCFF-9.4.lib
vtkIOGeometry-9.4.lib
vtkIOHDF-9.4.lib
vtkIOImage-9.4.lib
vtkIOImport-9.4.lib
vtkIOInfovis-9.4.lib
vtkIOIOSS-9.4.lib
vtkIOLegacy-9.4.lib
vtkIOLSDyna-9.4.lib
vtkIOMINC-9.4.lib
vtkIOMotionFX-9.4.lib
vtkIOMovie-9.4.lib
vtkIONetCDF-9.4.lib
vtkIOOggTheora-9.4.lib
vtkIOParallel-9.4.lib
vtkIOParallelXML-9.4.lib
vtkIOPLY-9.4.lib
vtkIOSegY-9.4.lib
vtkIOSQL-9.4.lib
vtkioss-9.4.lib
vtkIOTecplotTable-9.4.lib
vtkIOVeraOut-9.4.lib
vtkIOVideo-9.4.lib
vtkIOXML-9.4.lib
vtkIOXMLParser-9.4.lib
vtkjpeg-9.4.lib
vtkjsoncpp-9.4.lib
vtkkissfft-9.4.lib
vtklibharu-9.4.lib
vtklibproj-9.4.lib
vtklibxml2-9.4.lib
vtkloguru-9.4.lib
vtklz4-9.4.lib
vtklzma-9.4.lib
vtkmetaio-9.4.lib
vtknetcdf-9.4.lib
vtkogg-9.4.lib
vtkParallelCore-9.4.lib
vtkParallelDIY-9.4.lib
vtkpng-9.4.lib
vtkpugixml-9.4.lib
vtkRenderingAnnotation-9.4.lib
vtkRenderingCellGrid-9.4.lib
vtkRenderingContext2D-9.4.lib
vtkRenderingContextOpenGL2-9.4.lib
vtkRenderingCore-9.4.lib
vtkRenderingFreeType-9.4.lib
vtkRenderingGL2PSOpenGL2-9.4.lib
vtkRenderingHyperTreeGrid-9.4.lib
vtkRenderingImage-9.4.lib
vtkRenderingLabel-9.4.lib
vtkRenderingLICOpenGL2-9.4.lib
vtkRenderingLOD-9.4.lib
vtkRenderingOpenGL2-9.4.lib
vtkRenderingSceneGraph-9.4.lib
vtkRenderingUI-9.4.lib
vtkRenderingVolume-9.4.lib
vtkRenderingVolumeOpenGL2-9.4.lib
vtkRenderingVtkJS-9.4.lib
vtksqlite-9.4.lib
vtksys-9.4.lib
vtkTestingCore-9.4.lib
vtkTestingRendering-9.4.lib
vtktheora-9.4.lib
vtktiff-9.4.lib
vtktoken-9.4.lib
vtkverdict-9.4.lib
vtkViewsContext2D-9.4.lib
vtkViewsCore-9.4.lib
vtkViewsInfovis-9.4.lib
vtkWrappingTools-9.4.lib
vtkzlib-9.4.lib
pcl_common.lib
pcl_features.lib
pcl_filters.lib
pcl_io.lib
pcl_io_ply.lib
pcl_kdtree.lib
pcl_keypoints.lib
pcl_ml.lib
pcl_octree.lib
pcl_outofcore.lib
pcl_people.lib
pcl_recognition.lib
pcl_registration.lib
pcl_sample_consensus.lib
pcl_search.lib
pcl_segmentation.lib
pcl_stereo.lib
pcl_surface.lib
pcl_tracking.lib
pcl_visualization.lib

7、将SDL检查设置为否

8、设置【预处理器定义】

内容如下:

BOOST_USE_WINDOWS_H
NOMINMAX
_CRT_SECURE_NO_DEPRECATE

9、启用增强指令集

设置为【高级矢量扩展(x86/x64)(/arch:AVX)】

注意:如果未启动增强指令集,则会出现如下报错:

#error: "Potential runtime error due to aligned malloc mismatch! You likely have to compile your code with AVX enabled or define EIGEN_MAX_ALIGN_BYTES=32 (to silence this message at your own risk, define PCL_SILENCE_MALLOC_WARNING=1)"

http://www.jsqmd.com/news/1096256/

相关文章:

  • 【Unity3D网络优化】Package Manager加载失败与插件安装难题的实战排查与加速方案
  • ASD433A评估板硬件解析:PowerPC汽车MCU电源、时钟与调试接口设计
  • WechatBakTool:如何安全备份微信聊天记录?三个关键步骤解密数据保护
  • 【手把手】仅3步!飞算 JavaAI 通用场景,一句话产出完整分布式项目源码
  • PowerPC汽车MCU评估板硬件设计解析与调试实战
  • NHSE动物森友会存档编辑器:3小时掌握游戏数据修改的完整指南
  • 3步搞定微博高清图片批量下载:技术爱好者的极速采集方案
  • 解锁音频自由:5步掌握QMCDecode的终极实战指南
  • AirSim进阶(1):C++接口性能调优与ROS联合仿真实战
  • 欧姆龙CJ1W-EIP21模块的FINS通信配置与网络故障排查实战
  • 2026openclaw官方平替入口推荐 五款实测AI智能体多场景选型参考
  • AI Agent
  • 【安卓Framework学习】Wifi框架学习之状态机流转与消息驱动机制
  • AI功能类硬件:割草机器人终于知道该往哪走了
  • 3步解锁:用闲置安卓手机打造专业级Linux摄像头方案
  • Minority Sentinel:多智能体辩论中推翻多数投票的少数正确样本识别框架
  • 2026年GEO生成式引擎优化行业研究报告:AI搜索时代的品牌增长新基建
  • 闪光灯慢同步实战:从前后帘原理到创意车轨人像
  • 如何用HunterPie提升你的《怪物猎人:世界》狩猎体验:新手完整指南
  • 深度把玩百年灵的老哥,建议先放大50倍看看这组包装的公差
  • OpenAI三连发炸场,360趁乱偷家:2026年AI模型大战的终局信号
  • 整合Nurabot、CoDoctor AI与智慧医院自动化流程,构建下一代智慧医疗新生态
  • 基于机器学习的缺陷预测模型:从代码提交日志到风险预警的完整实现
  • 云顶之弈悬浮助手:当策略游戏遇上开源智慧
  • Selenium与ChromeDriver环境搭建及自动化测试入门实战
  • 离散时间线性定常系统的李雅普诺夫稳定性判据与实践
  • WindowsCleaner:高效解决C盘空间危机的完整系统优化方案
  • 【UE】用控件蓝图优化样条线测距交互(实战篇)
  • WindowsCleaner:彻底告别C盘空间不足的终极解决方案
  • Truveta LLM:首个EHR原生临床语言模型架构解析