• PCL源码编译


            背景:为什么要编译PCL源码,一方面对于PCL类里面一些不对外开发的成员变量,有时又急需使用到,如果可以编译源码,不妨将其改成public,当然也可以进行其它方面的更改,但这也取决于个人的编码能力。另一方面我们有时对某一类算法感兴趣,尤其是实现该算法过程中可能涉及到很多我们认为有用的工具,那么源码就提供了阅读并理解的机会。如果我们一直只是简单的调用PCL的相关接口,那么可不可以这么理解呢,我们就好比是一个搬运工,创造力几乎为零。但是这种能力先别说是核心竞争力,竞争力也不够强吧(估计面试官也不大会感兴趣)!当然博主目前的能力与水平也仅限搬运工级别的,所以才感觉到创造力的难能可贵,同时也是我要写这篇博客的重要原因了。

           准备工具:

           1.pcl1.8的安装包: https://pan.baidu.com/s/1c1sqoQO#list/path=%2F  (由于没有上传到百度云,这里借用一下他人的下载链接)

           2.pcl1.8.1的源码: https://github.com/PointCloudLibrary/pcl/tree/pcl-1.8.1

           数据1的作用,主要是为了提供pcl编译所需的三方库。正常安装即可

           安装后的文件夹是这样的。

                          

              然后打开cmake工具,把源码里的cmake文件拖拽到制定位置:如图

              

             然后重要的一步就要到了:勾选上Group 、advanced选项。然后点击Add Entry

              

     

              其中value的值就是,PCL的安装路径,可以参照我的路径         

              F:PCL 1.8.03rdPartyVTKin;
              F:PCL 1.8.03rdPartyBoost;
              F:PCL 1.8.03rdPartyQhullin;
              F:PCL 1.8.03rdPartyFLANNin;
              F:PCL 1.8.03rdPartyEigeneigen3;
              G:Qt5.6_64_real5.6msvc2013_64;

              然后就可以点击configure ->generate。等待一会,就可以打开工程了。至此基本上编译成功。

              建议:由于pcl安装包可能是vs13 64位。这个版本的可能多一点。但是不管哪个版本,我们在cmake过程中尽量要保持版本一致,不然无法编译成功。

              编译成功

           

           

     

  • 相关阅读:
    867. Transpose Matrix
    896. Monotonic Array
    Java并发包中线程池ThreadPoolExecutor原理探究
    Java中的线程协作之Condition
    Java中的读写锁
    Java中的锁——Lock和synchronized
    Java中的队列同步器AQS
    Java并发编程基础之volatile
    leetcode-数组中只出现一次的数字
    leetcode-比特位计数
  • 原文地址:https://www.cnblogs.com/z-web-2017/p/11983850.html
Copyright © 2020-2023  润新知