原文链接:http://blog.csdn.net/u012337034/article/details/38270109
简介:
在Windows下安装PCL点云库的方法大概有两种:其一,all-in-one-installer,这个只有两个版本1.5.1和1.6.0,而且顾名思义,安装方法极其简单,这里就不多做介绍了;其二,build PCL out of source,这里我们可以使用PCL的各种版本,而且随着PCL的更新,我们也可以不断的update。接下来我将会详细介绍如何独立安装PCL点云库。
配置需求:
平台:
周围没有闲置的电脑,只能拿我10年的CQ41开刀了。下面罗列配置:
- 操作系统:Win 7 32bit SP1
- IDE:VisualStudio 2010 SP1 (一定更新到SP1,否则COFF错误)
- CMake:Version3.0.0 (楼主喜欢第一个吃螃蟹)
点云库和第三方库:
点云库的版本可以随便选了,这里我以最新稳定版本1.7.132bit为例。第三方库版本的选择就没有那么洒脱了,PCL官方给定了指定的版本。
- Boost 1.50.0
- Eigen 3.0.5
- FLANN 1.7.1
- VTK 5.8.0
- QHull 6.2.0.1385
- OpenNI 1.5.4 & 5.1.0
第三方库我建议从官网直接下载(点此下载),省去了build的过程,直接安装就可。
安装步骤:
第三方库:
点云库的build需要第三方库的支持,而且三方库安装的方法很简单,为了方便管理,我建议大家把第三方库安装到同一个固定的目录下。比如我就安装到了C:\pcl-1.7.1\3rdParty下。(环境变量将会在安装的过程中默认添加,之后我们就不用再费事了。
点云库build:
首先附上下载链接地址(点此下载),然后解压,我放到了E:\pcl-pcl-1.7.1\pcl-pcl-1.7.1\下,为了方便管理,我们在此目录下创建一个build目录。然后打开CMake,选择好目录(如图中的红框所示)。
接下来选择build的库,如图所示(为了省事,我基本上都选了)。
接下来点击Configure按键,效果如下图,这里主要判断CMake是否能找到所需依赖库。
然后点击Generate按键,等待生成(别高兴太早,这只是完成了不到三分之一的工作)。
这里,咱们先除去一个bug:在io目录下找到png_io.h这个文件,然后把144-147行的这个函数注释掉(否则很多库会编译不通过),如下图所示。
然后打开CMake生成的VS2010解决方案进行编译即可,Debug和Release各编译一次。Release下是完美编译的,全部会编译成功;而Debug下可能要编译多次才能补全(可以根据Release生成的文件进行Debug的逐个编译,编译过程会消耗很长时间)。
倒数第二步,进行文件的整理操作。
- 在3rdParty所在的目录中新建一个lib目录,将刚才build目录下lib目录中的.lib文件全部复制过去;然后在lib目录下新建一个pkgconfig目录,在上述解压包下搜索所有的.pc文件,复制过去。
- 在3rdParty所在的目录中新建一个bin目录,将build目录下bin目录中的.exe和.pdb全部复制过去。
- 在3rdParty所在的目录中新建一个cmake目录,将build目录下的PCLConfig.cmake和PCLConfigVersion.cmake文件复制过去。
- 在3rdParty所在的目录中新建一个include目录,在include目录下新建一个目录pcl-1.7(名字一定是这个),再此目录下新建一个pcl目录,然后把解压包下每个模块中include\pcl\下的文件全部复制过去。
以我设定的目录为例:
- C:\pcl-1.7.1\
- C:\pcl-1.7.1\3rdParty\
- C:\pcl-1.7.1\bin\
- C:\pcl-1.7.1\cmake\
- C:\pcl-1.7.1\include\
- C:\pcl-1.7.1\lib\
最后一步,添加系统环境变量。首先在Path下添加bin目录,我的是C:\pcl-1.7.1\bin;然后新建一个PCL_ROOT变量名,变量为pcl所在的目录,我的是C:\pcl-1.7.1\3rdParty。
至此就大功告成了,可以从官网上随便找个例子,然后用CMake生成解决方案,并运行成功。我已经进行过实验了,就不上贴图了。建议大家使用CMake,这样就不用再VS下添加各种目录和库了。