30

一分钟详解PCL-1.8.1从源码搭建开发环境一(Boost库的编译)

 3 years ago
source link: https://mp.weixin.qq.com/s/YJkh4qfaz5g-PgPp2dY-5A
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

3D视觉工坊的第46篇文章

最近主要在研究点云后处理模块,虽然一直在丰富完善我们自己编写的点云库,但是对于PCL的源码,非常具有参考价值。因而,对于PCL的源码编译工作,显得格外重要。

借助CSDN博文、以及朱德海主编的《点云库PCL学习教程》这本书,这里,我也是边进行编译,同步将编译过程中出现的问题以及编译方法总结分享给大家,如有感兴趣的小伙伴,欢迎多多交流。

一  编译依赖库准备工作

PCL从源码搭建开发环境是指需要自行编译链接第三方库,然后再编译安装PCL库。

为了编译PCL库的每一个组件,需要下载并编译一系列PCL依赖的第三方库。

1、 Boost库,用于共享指针和线程操作,必需。

2、 Eigen库,用于矩阵、向量等数据操作,必需。

3、 FLANN库,在kd树模块中用于快速近邻搜索,必需。

4、 QHull库,用于凸或凹曲面的外包求解,可选。

5、 VTK(Visualization ToolKit)库,用于在可视化模块中用于3D点云渲染和可视化,必需。

以上的几个库为我接下来将要依次编译的库,除此以外,根据需要,PCL所依赖的其他外部库还有如下:

  • Googletest库,用于建立测试单元,可选。

  • OpenNI版本,用于与OpenNI兼容的设备获取点云,可选。

  • QT库,用于UI开发,可选。

  • MPI库,用于集群上高性能计算,可选。

注:本次编译我所使用的外部库版本依次如下:①boost_1_65_1;②Eigen3.0;③FLANN_1.9.1;④QHull-2015.2;⑤VTK-8.2.0。

对于以上的库,大家可以依次可以前往对应的官网进行下载,此处提供上述我所使用的外部库下载链接,在公众号【3D视觉工坊】后台回复「PCL外部库」,即可获得百度云下载链接。

我们将上述下载好的外部库,存放到E:\PCL\PCL_extern_libs目录下,如图:

640

好的,闲话少说,让我们一起开干吧。

二 PCL1.8.1源码编译

第一步:boost库的编译

首先boost_1_65_1目录下的文件如下图所示:

640

2.1 步骤1:打开VS2015开发人员命令提示符,运行bootsrap.bat.

640
640

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

640

2.2步骤2:生成lib

确认自己的VS版本的工具集。

Visual Studio 2017

Visual Studio 2015

Visual Studio 2013

运行b2 toolset=msvc-14.0 address-model=64—stagedir=”./VS2015”(也是在VS2015开发人员命令提示符下),编译过程较长,请耐心等待。

640

2.3 步骤3:使用boost库(验证编译的正确性)

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

640

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

640
640

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

640

注意:一定要使用对应版本的VS来生成lib。

640

程序运行结果表明,boost库编译正确。

CUDA8.0+VS2015+Win10开发环境搭建教程

回复关键词——知识星球,前往【3D视觉工坊】知识星球

640?


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK