hdl_graph_slam 调试遇到的问题解决

一. 安装依赖

sudo apt install libomp-dev
sudo apt-get install ros-kinetic-geodesy ros-kinetic-pcl-ros ros-kinetic-nmea-msgs ros-kinetic-libg2o

二. hdl_graph_slam

1. 安装 package

cd catkin_ws/src
git clone https://github.com/koide3/ndt_omp.git
git clone https://github.com/SMRT-AIST/fast_gicp.git --recursive

第一个 ndt_omp 的包编译没有问题,第二个 fast_gicp 的包编译会遇到下面问题
在这里插入图片描述
fast-gicpCMakeLists 文件添加

add_compile_options(-std=c++11) 
add_compile_options(-std=gnu++11)

2. 安装 hdl_graph_slam

cd ~/catkin_ws/src
git clone https://github.com/koide3/hdl_graph_slam.git
cd .. && catkin_make

编译会遇到下面问题
在这里插入图片描述
hdl_graph_slam 的 CMakeLists 文件添加

add_compile_options(-std=c++11) 

就能成功编译了

三. hdl_localization

  • 问题1
    在这里插入图片描述
    hdl_global_localizationCMakeLists 文件添加
add_compile_options(-std=c++14) 
add_compile_options(-std=gnu++14)
  • 问题2
    在这里插入图片描述
    hdl_localization/apps/hdl_localization_nodelet.cpp 添加头文件
#include <atomic>

还是会有问题:
在这里插入图片描述
不知道怎么解决了。

更新: issues [2021-01-27]

hdl_localization/apps/hdl_localization_nodelet.cpp 中 :

pcl::Registration<PointT, PointT>::Ptr create_registration() const

改成

pcl::Registration<PointT, PointT>::Ptr create_registration()

然后就可以编译成功了
在这里插入图片描述

四. hdl_localization

问题1:
在这里插入图片描述终于有一个直接的解决办法: issues

cv::ml::Boost::load<cv::ml::Boost>(modelfile);

改成:

cv::ml::Boost::load(modelfile); 

终于都 ok 了

猜你喜欢

转载自blog.csdn.net/qq_35632833/article/details/113186640