
最近主要在研究点云后处理模块,虽然一直在丰富完善我们自己编写的点云库,但是对于PCL的源码,非常具有参考价值。因而,对于PCL的源码编译工作,显得格外重要。
借助CSDN博文、以及朱德海主编的《点云库PCL学习教程》这本书,这里,我也是边进行编译,同步将编译过程中出现的问题以及编译方法总结分享给大家,如有感兴趣的小伙伴,欢迎多多交流。
PCL从源码搭建开发环境是指需要自行编译链接第三方库,然后再编译安装PCL库。
为了编译PCL库的每一个组件,需要下载并编译一系列PCL依赖的第三方库。
1、 Boost库,用于共享指针和线程操作,必需。
2、 Eigen库,用于矩阵、向量等数据操作,必需。
3、 FLANN库,在kd树模块中用于快速近邻搜索,必需。
4、 QHull库,用于凸或凹曲面的外包求解,可选。
5、 VTK(Visualization ToolKit)库,用于在可视化模块中用于3D点云渲染和可视化,必需。
以上的几个库为我接下来将要依次编译的库,除此以外,根据需要,PCL所依赖的其他外部库还有如下:
注:本次编译我所使用的外部库版本依次如下:①boost_1_65_1;②Eigen3.0;③FLANN_1.9.1;④QHull-2015.2;⑤VTK-8.2.0。
对于以上的库,大家可以依次可以前往对应的官网进行下载,此处提供上述我所使用的外部库下载链接,在公众号【3D视觉工坊】后台回复「PCL外部库」,即可获得百度云下载链接。
我们将上述下载好的外部库,存放到E:\PCL\PCL_extern_libs目录下,如图:

好的,闲话少说,让我们一起开干吧。
首先boost_1_65_1目录下的文件如下图所示:



经过上述步骤之后,boost_1_65_1目录下的文件如下图所示。

确认自己的VS版本的工具集。
名称 | 版本 |
|---|---|
Visual Studio 2017 | 14.1 |
Visual Studio 2015 | 14.0 |
Visual Studio 2013 | 12.0 |
运行b2 toolset=msvc-14.0 address-model=64—stagedir=”./VS2015”(也是在VS2015开发人员命令提示符下),编译过程较长,请耐心等待。

第一步:新建一个工程test_boost,右键属性。

第二步:设置包含目录和附加库


三步:调用boost库函数,测试其正确性

注意:一定要使用对应版本的VS来生成lib。
程序运行结果表明,boost库编译正确。