PCL配置

  1. PCL配置参考博文,简直是复杂,不过配置过程是正确的。虽然现在有AllInOne安装器了,但是因为eigen和boost还被CGAL所需要,所以我没有选用安装器。
  2. 在测试一个欧拉聚类的时候出现如下错误(确认代码无误)
    error LNK2001: 无法解析的外部符号 "protected: virtual void <strong>thiscall pcl::NormalEstimation::computeFeature(class pcl::PointCloud &)"
    error LNK2019: 无法解析的外部符号 "public: void <>thiscall pcl::ConditionalEuclideanClustering::segment(class std::vector > &)"
    
  3. 解决方法:在类所在的cpp增加#define PCL_NO_PRECOMPILE预编译

  4. 最近在看PCL官方文档的时候看见了这个要求

    Starting with PCL-1.7 you need to define PCL_NO_PRECOMPILE before you include any PCL headers to include the templated algorithms as well.

CGAL配置

从一开始的迷茫到CGAL的安装配置成功,中间也走了很多弯路,现在记录下最简洁的安装方式:

采用CGAL主页Download提供的方式安装CGAL-Download

  • 如果是macOS直接brew install cgal就好了
  • 如果是Windows
    1. 载合适自己Visual Studio版本的BOOST安装包,直接安装。如果对BOOST 有特殊需求的可以用编译的方式安装,不过这货编译起来确实是太慢啦!
    2. 安装好后配置环境变量BOOST_LIBRARY和BOOST_INCLUDE并在path中添加BOOST的dll文件所在路径
    3. 下载CGAL的安装包安装,注意最后会提示在系统path中增加路径,如果不成功的话自己手动添加
    4. 可选安装Qt和libQGLViewer
    5. 安装CMAKE
    6. 使用CMAKE在CGAL根目录创建工程build,然后打开sln文件并编译生成解决方案
    7. 系统path中增加CGAL的路径build\bin