安装环境:VS2017+win8+64位

由于当时安装VS安装的是2017版本,所以参考了网上2015版本进行相关安装和配置。

准备:

首先下载这两个文件:(链接里还有VS2015,根据自己版本下载)

PCL-1.8.1-AllInOne-msvc2017-win64.exe //  All in one 安装包基本上包含了PCL中所使用全部第三方编译包

PCL-1.8.1-pdb-msvc2017-win64.zip //PDB文件包主要用于后期单步调试时使用

下载地址:https://github.com/PointCloudLibrary/pcl/releases

  1. 点开PCL-1.8.1-AllInOne-msvc2017-win64.exe安装一键安装包,然后选择自己的安装目录,勾选上Add PCL to system PATH for all users,安装组件默认全选就好,最后点安装;(时间可能有点久,耐心等)
  2. 由于组件中我们选择了openni,在安装过程中会提示需要安装openni,这时注意我们更改openni的安装路径为PCL安装路径下的3rdParty\OpenNI2\文件夹,然后同意安装PrimerSense,基本上就已经安装完了,接下来配置系统变量。
  3. 由于我们勾选了Add PCL to system PATH for all users,安装好后,系统变量里会自动出现下面的几个变量
  4. 接下来我们还要在Path变量下添加几个变量:%PCL_ROOT\bin;%PCL_ROOT%\3rdParty\VTK\bin;%PCL_ROOT%\3rdParty\FLANN\bin;%OPENNI2_REDIST64%;%PCL_ROOT%\3rdParty\Qhull\bin;%PCL_ROOT%\3rdParty\OpenNI2\Tools
  5. 然后重启电脑使它生效;最后解压PCL-1.8.1-pdb-msvc2017-win64.zip,将里面的pdb文件全部复制到PCL安装路径下bin文件夹中;
现在PCL已经安装好了,我们可以开始配置VS2017开发环境

(1)新建一个空项目,将项目设置成64位。 
(2)切换属性管理器,在Debug|64下添加新项目属性表,取名PCL。 
(3)左侧点 VC++目录 ,右侧包含目录添加:
D:\Program Files\PCL 1.8.1\3rdParty\OpenNI2\Include; D:\Program Files\PCL 1.8.1\include\pcl-1.8; D:\Program Files\PCL 1.8.1\3rdParty\VTK\include\vtk-8.0; D:\Program Files\PCL 1.8.1\3rdParty\QHull\include; D:\Program Files\PCL 1.8.1\3rdParty\FLANN\include; D:\Program Files\PCL 1.8.1\3rdParty\Eigen\eigen3; D:\Program Files\PCL 1.8.1\3rdParty\Boost\include\boost-1_64;
右侧库目录添加:
D:\Program Files\PCL 1.8.1\3rdParty\OpenNI2\Lib;D:\Program Files\PCL 1.8.1\3rdParty\VTK\lib;D:\Program Files\PCL 1.8.1\3rdParty\Qhull\lib;D:\Program Files\PCL 1.8.1\3rdParty\FLANN\lib;D:\Program Files\PCL 1.8.1\3rdParty\Boost\lib;D:\Program Files\PCL 1.8.1\lib;

左侧点链接器,再点输入,找到附加依赖项,添加如下(最后额外添加一个 opengl32.lib的库,不然会报错,大概158个链接错误,评论区有出现过)

vtknetcdf_c++-gd.lib;pcl_common_debug.lib;pcl_features_debug.lib;pcl_filters_debug.lib;pcl_io_ply_debug.lib;pcl_io_debug.lib;pcl_kdtree_debug.lib;pcl_keypoints_debug.lib;pcl_ml_debug.lib;pcl_octree_debug.lib;pcl_outofcore_debug.lib;pcl_people_debug.lib;pcl_recognition_debug.lib;pcl_registration_debug.lib;pcl_sample_consensus_debug.lib;pcl_search_debug.lib;pcl_segmentation_debug.lib;pcl_stereo_debug.lib;pcl_surface_debug.lib;pcl_tracking_debug.lib;pcl_visualization_debug.lib;libboost_atomic-vc141-mt-gd-1_64.lib;libboost_bzip2-vc141-mt-gd-1_64.lib;libboost_chrono-vc141-mt-gd-1_64.lib;libboost_container-vc141-mt-gd-1_64.lib;libboost_context-vc141-mt-gd-1_64.lib;libboost_coroutine-vc141-mt-gd-1_64.lib;libboost_date_time-vc141-mt-gd-1_64.lib;libboost_exception-vc141-mt-gd-1_64.lib;libboost_fiber-vc141-mt-gd-1_64.lib;libboost_filesystem-vc141-mt-gd-1_64.lib;libboost_graph-vc141-mt-gd-1_64.lib;libboost_graph_parallel-vc141-mt-gd-1_64.lib;libboost_iostreams-vc141-mt-gd-1_64.lib;libboost_locale-vc141-mt-gd-1_64.lib;libboost_log-vc141-mt-gd-1_64.lib;libboost_log_setup-vc141-mt-gd-1_64.lib;libboost_math_c99-vc141-mt-gd-1_64.lib;libboost_math_c99f-vc141-mt-gd-1_64.lib;libboost_math_c99l-vc141-mt-gd-1_64.lib;libboost_math_tr1-vc141-mt-gd-1_64.lib;libboost_math_tr1f-vc141-mt-gd-1_64.lib;libboost_math_tr1l-vc141-mt-gd-1_64.lib;libboost_mpi-vc141-mt-gd-1_64.lib;libboost_numpy3-vc141-mt-gd-1_64.lib;libboost_numpy-vc141-mt-gd-1_64.lib;libboost_prg_exec_monitor-vc141-mt-gd-1_64.lib;libboost_program_options-vc141-mt-gd-1_64.lib;libboost_python3-vc141-mt-gd-1_64.lib;libboost_python-vc141-mt-gd-1_64.lib;libboost_random-vc141-mt-gd-1_64.lib;libboost_regex-vc141-mt-gd-1_64.lib;libboost_serialization-vc141-mt-gd-1_64.lib;libboost_signals-vc141-mt-gd-1_64.lib;libboost_system-vc141-mt-gd-1_64.lib;libboost_test_exec_monitor-vc141-mt-gd-1_64.lib;libboost_thread-vc141-mt-gd-1_64.lib;libboost_timer-vc141-mt-gd-1_64.lib;libboost_type_erasure-vc141-mt-gd-1_64.lib;libboost_unit_test_framework-vc141-mt-gd-1_64.lib;libboost_wave-vc141-mt-gd-1_64.lib;libboost_wserialization-vc141-mt-gd-1_64.lib;libboost_zlib-vc141-mt-gd-1_64.lib;flann-gd.lib;flann_cpp-gd.lib;flann_cpp_s-gd.lib;flann_s-gd.lib;qhull_d.lib;qhullcpp_d.lib;qhullstatic_d.lib;qhullstatic_r_d.lib;qhull_p_d.lib;qhull_r_d.lib;vtkalglib-8.0-gd.lib;vtkChartsCore-8.0-gd.lib;vtkCommonColor-8.0-gd.lib;vtkCommonComputationalGeometry-8.0-gd.lib;vtkCommonCore-8.0-gd.lib;vtkCommonDataModel-8.0-gd.lib;vtkCommonExecutionModel-8.0-gd.lib;vtkCommonMath-8.0-gd.lib;vtkCommonMisc-8.0-gd.lib;vtkCommonSystem-8.0-gd.lib;vtkCommonTransforms-8.0-gd.lib;vtkDICOMParser-8.0-gd.lib;vtkDomainsChemistry-8.0-gd.lib;vtkexoIIc-8.0-gd.lib;vtkexpat-8.0-gd.lib;vtkFiltersAMR-8.0-gd.lib;vtkFiltersCore-8.0-gd.lib;vtkFiltersExtraction-8.0-gd.lib;vtkFiltersFlowPaths-8.0-gd.lib;vtkFiltersGeneral-8.0-gd.lib;vtkFiltersGeneric-8.0-gd.lib;vtkFiltersGeometry-8.0-gd.lib;vtkFiltersHybrid-8.0-gd.lib;vtkFiltersHyperTree-8.0-gd.lib;vtkFiltersImaging-8.0-gd.lib;vtkFiltersModeling-8.0-gd.lib;vtkFiltersParallel-8.0-gd.lib;vtkFiltersParallelImaging-8.0-gd.lib;vtkFiltersPoints-8.0-gd.lib;vtkFiltersProgrammable-8.0-gd.lib;vtkFiltersSelection-8.0-gd.lib;vtkFiltersSMP-8.0-gd.lib;vtkFiltersSources-8.0-gd.lib;vtkFiltersStatistics-8.0-gd.lib;vtkFiltersTexture-8.0-gd.lib;vtkFiltersTopology-8.0-gd.lib;vtkFiltersVerdict-8.0-gd.lib;vtkfreetype-8.0-gd.lib;vtkGeovisCore-8.0-gd.lib;vtkgl2ps-8.0-gd.lib;vtkhdf5-8.0-gd.lib;vtkhdf5_hl-8.0-gd.lib;vtkImagingColor-8.0-gd.lib;vtkImagingCore-8.0-gd.lib;vtkImagingFourier-8.0-gd.lib;vtkImagingGeneral-8.0-gd.lib;vtkImagingHybrid-8.0-gd.lib;vtkImagingMath-8.0-gd.lib;vtkImagingMorphological-8.0-gd.lib;vtkImagingSources-8.0-gd.lib;vtkImagingStatistics-8.0-gd.lib;vtkImagingStencil-8.0-gd.lib;vtkInfovisCore-8.0-gd.lib;vtkInfovisLayout-8.0-gd.lib;vtkInteractionImage-8.0-gd.lib;vtkInteractionStyle-8.0-gd.lib;vtkInteractionWidgets-8.0-gd.lib;vtkIOAMR-8.0-gd.lib;vtkIOCore-8.0-gd.lib;vtkIOEnSight-8.0-gd.lib;vtkIOExodus-8.0-gd.lib;vtkIOExport-8.0-gd.lib;vtkIOExportOpenGL-8.0-gd.lib;vtkIOGeometry-8.0-gd.lib;vtkIOImage-8.0-gd.lib;vtkIOImport-8.0-gd.lib;vtkIOInfovis-8.0-gd.lib;vtkIOLegacy-8.0-gd.lib;vtkIOLSDyna-8.0-gd.lib;vtkIOMINC-8.0-gd.lib;vtkIOMovie-8.0-gd.lib;vtkIONetCDF-8.0-gd.lib;vtkIOParallel-8.0-gd.lib;vtkIOParallelXML-8.0-gd.lib;vtkIOPLY-8.0-gd.lib;vtkIOSQL-8.0-gd.lib;vtkIOTecplotTable-8.0-gd.lib;vtkIOVideo-8.0-gd.lib;vtkIOXML-8.0-gd.lib;vtkIOXMLParser-8.0-gd.lib;vtkjpeg-8.0-gd.lib;vtkjsoncpp-8.0-gd.lib;vtklibharu-8.0-gd.lib;vtklibxml2-8.0-gd.lib;vtklz4-8.0-gd.lib;vtkmetaio-8.0-gd.lib;vtkNetCDF-8.0-gd.lib;vtkoggtheora-8.0-gd.lib;vtkParallelCore-8.0-gd.lib;vtkpng-8.0-gd.lib;vtkproj4-8.0-gd.lib;vtkRenderingAnnotation-8.0-gd.lib;vtkRenderingContext2D-8.0-gd.lib;vtkRenderingContextOpenGL-8.0-gd.lib;vtkRenderingCore-8.0-gd.lib;vtkRenderingFreeType-8.0-gd.lib;vtkRenderingGL2PS-8.0-gd.lib;vtkRenderingImage-8.0-gd.lib;vtkRenderingLabel-8.0-gd.lib;vtkRenderingLIC-8.0-gd.lib;vtkRenderingLOD-8.0-gd.lib;vtkRenderingOpenGL-8.0-gd.lib;vtkRenderingVolume-8.0-gd.lib;vtkRenderingVolumeOpenGL-8.0-gd.lib;vtksqlite-8.0-gd.lib;vtksys-8.0-gd.lib;vtktiff-8.0-gd.lib;vtkverdict-8.0-gd.lib;vtkViewsContext2D-8.0-gd.lib;vtkViewsCore-8.0-gd.lib;vtkViewsInfovis-8.0-gd.lib;vtkzlib-8.0-gd.lib;

opengl32.lib

(注意:上边的包含目录,库目录按你自己的来,附加依赖项有些库版本不同,根据自己文件夹来)

(4)(出现错误erroe c4996;_Uninitialized_copy0时添加)

右侧CC++,点击预处理器,右侧预处理器定义,添加上

_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS

(5)(可以不设置)

项目环境目录配置:右键解决方案,属性,左侧配置属性–调试,右侧环境设置为: PATH=$(PCL_ROOT)\bin;$(PCL_ROOT)\3rdParty\FLANN\bin;$(PCL_ROOT)\3rdParty\VTK\bin;$(PCL_ROOT)\Qhull\bin;$(PCL_ROOT)\3rdParty\OpenNI2\Tools;$(PATH)


安装测试

将下面代码拷贝到vs里,点运行,出现控制台窗口后,提示未找到点云文件,这个可以不管,不报错误,即成功配置pcl。

#include <pcl/visualization/cloud_viewer.h>
#include <iostream>
#include <pcl/io/io.h>
#include <pcl/io/pcd_io.h>
#include <vtkAutoInit.h>
VTK_MODULE_INIT(vtkInteractionStyle);
VTK_MODULE_INIT(vtkRenderingFreeType);
VTK_MODULE_INIT(vtkRenderingOpenGL);int user_data;void viewerOneOff(pcl::visualization::PCLVisualizer& viewer)
{viewer.setBackgroundColor(1.0, 0.5, 1.0);pcl::PointXYZ o;o.x = 1.0;o.y = 0;o.z = 0;viewer.addSphere(o, 0.25, "sphere", 0);std::cout << "i only run once" << std::endl;}void viewerPsycho(pcl::visualization::PCLVisualizer& viewer)
{static unsigned count = 0;std::stringstream ss;ss << "Once per viewer loop: " << count++;viewer.removeShape("text", 0);viewer.addText(ss.str(), 200, 300, "text", 0);//FIXME: possible race condition here:user_data++;
}int main()
{pcl::PointCloud<pcl::PointXYZRGBA>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZRGBA>);pcl::io::loadPCDFile("my_point_cloud.pcd", *cloud);pcl::visualization::CloudViewer viewer("Cloud Viewer");//blocks until the cloud is actually renderedviewer.showCloud(cloud);//use the following functions to get access to the underlying more advanced/powerful//PCLVisualizer//This will only get called onceviewer.runOnVisualizationThreadOnce(viewerOneOff);//This will get called once per visualization iterationviewer.runOnVisualizationThread(viewerPsycho);while (!viewer.wasStopped()){//you can also do cool processing here//FIXME: Note that this is running in a separate thread from viewerPsycho//and you should guard against race conditions yourself...user_data++;}return 0;
}



win8安装PCL1.8.1配置VS2017相关推荐

  1. VS2017社区版+PCL1.9.1配置

    Visual Studio 2017 Community 百度搜索,登录微软官网,下载Visual Studio 2017 Community版本安装包,运行引导文件,选择需要安装的组件,一步步运行安 ...

  2. win8能开发android的sdk么,Win8下Android SDK安装与环境变量配置教程

    Win8下Android SDK的安装与环境变量配置,具体内容如下 1.下载Android SDK,点击安装,直接默认路径即可! 进入该网站后往下拉就能找到sdk下载的位置,选择图中红圈的程序进行下载 ...

  3. w8计算机配置要求,安装Win8对电脑硬件的配置要求

    随着Win8系统不断的完善,越来越多的用户开始安装体验,这时候就出现了一个疑惑,很多用户考虑到Win8系统对电脑的硬件有何要求,怎么样的配置才能让Win8更好的运行呢?下面小编整理了一些具体数据,可供 ...

  4. Qt配置VS2017

    目录 一  Qt安装 二  VS2017安装 三  Qt配置VS2017 一  Qt安装     1.1  下载网址:http://download.qt.io/archive/qt/ 这里选择   ...

  5. CUDA10.1配置VS2017

    目录 一  CUDA 安装 二  CUDA环境变量配置 三  CUDA配置VS2017 一  CUDA 安装    1.1 CUDA下载 网址:https://developer.nvidia.com ...

  6. 计算机配置太低,安装Win10系统电脑配置太低怎么办

    现在电脑更新换代都很快,几年前的主流电脑配置跟现在比起来就差了一大截.Win10系统电脑配置要求不高,但是还是有一些比较老的机子无法安装Win10.那么想要安装Win10系统电脑配置太低怎么办呢?下面 ...

  7. C++cgal库配置+VS2017

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 CGAL配置+vs2017 一.下载CGAL库 1.1 CGAL下载链接:https://github.com/CGAL/c ...

  8. PCL库学习(8)_点云调参系统之环境搭建QT5.7.0+VS2013+PCL1.8.0配置

    功能1:单帧点云的加载与可视化: 功能2:多帧点云的加载与可视化:(未实现,可提供源码) 功能3:点云滤波,包括但不限于直通滤波.体素栅格滤波.半径滤波等等: 功能4:地面点检测,包括但不限于Lego ...

  9. 记Win8安装Kubuntu双系统的那些事...

    记Win8安装Kubuntu双系统的那些事- 废话 之前一直用的Win8-前段时间安装了kubuntu,现在完全转移到kubuntu了. 虽然之前我一直用Win8,但并不是指就没接触过linux了,我 ...

最新文章

  1. 由于找不到PBSYS90.dll,无法继续执行代码。重新安装程序可能会解决此问题!
  2. vi 技巧和诀窍:令人刮目相看的 10 个超酷命令
  3. Server2012R2 ADFS3.0 The same client browser session has made '6' requests in the last '13'seconds
  4. Java在Linux下创建文件,文件夹,删除,拷贝文件的命令
  5. SVN使用过程中遇到的一些问题
  6. 服装零售行业洞察报告
  7. Spring Cloud (断路器) Hystrix(三)
  8. C++ 单链表基本操作
  9. 《Java就业培训教程》_张孝祥_书内源码_09
  10. 微信小游戏飞机大战Cocos Creator+TypeScript
  11. VMware如何彻底卸载干净
  12. 什么是储蓄池抽样(Reservoir Sampling)算法?
  13. jquery下载所有版本(实时更新)
  14. ajax常见面试问题
  15. http请求报文头部vary信息
  16. java value是什么意思_“预期 Value ,发现特质”是什么意思?
  17. 红帽RHCE认证含金量怎么样?学红帽难吗?
  18. 315Mhz、433Mhz无线遥控信号的解码分析和模拟
  19. sd卡不小心格式化怎么恢复,sd卡格式化后恢复数据
  20. ad域 父域 管理 子域_如何正确地将WordPress从子域移动到根域

热门文章

  1. 一个纯净的linux基本部署
  2. Go语言基础篇 (一)初识Golang
  3. MVVM 中 TextBlock字符显示不同的颜色
  4. B-Integration(待定系数法)
  5. mysql聚合函数求数据总和的语句_以下聚合函数求数据总和的是( )_学小易找答案...
  6. win 10 word 打不出中文句号 微软拼音输入法
  7. 项目经理的职责和权利
  8. U盘的卸载挂载和格式化操作
  9. 最新!教育部发布2019全国高校名单(2956所)
  10. Linux_15_软件安装-RPM/YUM