[koide3/hdl_graph_slam] error: ‘shared_ptr’ in namespace ‘pcl’ does not name a template type

  • Post author:
  • Post category:其他



背景:

前段时间使用实验室的小车进行SLAM与导航的实操时,编译hdl出现的问题,去年还没有出现过,版本更新之后出现的问题。花了很多时间解决这个问题,在网上也没有搜索到解决问题的方法,所以希望用这篇文章给需要的人提供帮助,节省时间。


问题展示:

因为问题已经解决,当时也没有截屏之类的,所以在这里简短描述以下error:



error: ‘shared_ptr’ in namespace ‘pcl’ does not name a template type typedef pcl::shared_ptr< pcl::VoxelGrid > Ptr; error: ‘shared_ptr’ in namespace ‘pcl’ does not name a template type typedef pcl::shared_ptr< const pcl::VoxelGrid > ConstPtr;


解决办法:

1.进入到

ndt_omp



include

文件夹,我的文件路径:/home/…/catkin_ws/src/ndt_omp/include(仅供参考)

2.找到

gicp_omp.h

文件、

ndt_omp.h

文件、

voxel_grid_covariance_omp.h

文件

3.将上述三个文件中的


pcl::shared_ptr

改为

boost::shared_ptr


参考图片

:(所做更改如图片所示)

gicp_omp.h文件(部分)(94-97行、102-105行)

ndt_omp.h(部分)(98-101行)

voxel_grid_covariance_omp.h(部分)(87-90行)



版权声明:本文为weixin_41533879原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。