LeGO-LOAM在Ubuntu20.04下编译和运行的问题

  • 一、OpenCV 版本问题
  • 二、pcl问题
    • 1. C++14环境
    • 2. 报错:‘Index’ is not a member of ‘Eigen’
  • 三、/usr/bin/ld问题
  • 四、运行报错
  • 五、rviz问题

一、OpenCV 版本问题

由于20.04自带的是OpenCV4,所以要对LeGO-LOAM代码做一点改动:
找到utility.h中的:#include<opencv/cv.h>,修改为#include <opencv2/imgproc.hpp>。即可成功编译。

二、pcl问题

1. C++14环境

主要是让LeGO-LOAM支持C++14,所以只需要修改下载下来的源码中CMakeList.txt:
修改如下:

set(CMAKE_CXX_FLAGS "-std=c++14")

2. 报错:‘Index’ is not a member of ‘Eigen’

错误如下(示例):

/usr/include/pcl-1.10/pcl/filters/voxel_grid.h:340:21: error: ‘Index’ is not a member of ‘Eigen’ 340 | for (Eigen::Index ni = 0; ni < relative_coordinates.cols (); ni++)

该问题,可以参考 Build error on ubuntu 20.04. #215 ,即:将voxel_grid.h中报错的Eigen::Index x修改成int。

三、/usr/bin/ld问题

错误如下(示例):

/usr/bin/ld: 找不到 -lBoost::serialization
/usr/bin/ld: 找不到 -lBoost::thread
/usr/bin/ld: 找不到 -lBoost::timer
/usr/bin/ld: 找不到 -lBoost::chrono

在CMakeLists中加入:

find_package(Boost REQUIRED COMPONENTS timer thread serialization chrono)

四、运行报错

错误如下(实例):

/home/miking/catkin_ws/devel/lib/lego_loam/mapOptmization: error while loading shared libraries: libmetis.so: cannot open shared object file: No such file or directory

该问题,可以参考 roslaunch error #160 ,原因是未安装 libmetis 库。通过安装libparmetis-dev修复它重新运行即可:

sudo apt-get install libparmetis-dev

五、rviz问题

查看出问题的话题名,将代码中与之对应的/camera_init改成camera_init即可。
例如:以订阅的轨迹为例,其相关的Topic为/key_pose_origin,所以在代码中找到/key_pose_origin对应的发布者pubKeyPoses,将其对应的frame_id中的 / 去掉即可。

对应代码在mapOptmization.cpp中:
未修改:
修改后:
【注】:对应rviz显示大圈圈的问题,只要将每种点云的style修改成Flat Squares即可。

Ubuntu20.04下的编译与运行LeGO-LOAM【问题解决】相关推荐

  1. LeGO-LOAM:Ubuntu20.04下的编译与运行

    LeGO-LOAM在Ubuntu20.04下的编译与运行 一.源码及数据集下载 二.安装gtsam 三.建立ROS工作空间 四.LeGO-LOAM的编译 五.LeGO-LOAM的运行 六.可能会遇到的 ...

  2. LIO-SAM:Ubuntu20.04下的编译与运行

    LIO-SAM在Ubuntu20.04下的编译与运行 !!阅读须知!! 一.源码及数据集下载 二.LIO-SAM的编译 三.LIO-SAM的运行 四.可能会遇到的问题 1. 运行问题 2. rviz问 ...

  3. Ubuntu20.04下FabricV1.1.0 Fabcar运行及相关问题解决

    Ubuntu20.04下FabricV1.1.0 Fabcar运行及相关问题解决 Ubuntu20.04下FabricV1.1.0 Fabcar运行及相关问题解决 太长不看版本--要想成功运行Fabc ...

  4. ubuntu16.04下dyna-slam编译运行

    ubuntu16.04下dyna-slam编译运行 1. 显卡驱动安装 2. cuda安装 cuda与cudnn换版本可参考 3. cudnn安装 4. ORB_SLAM2依赖 4.1 安装Pango ...

  5. 20200215配置 惠普(HP)星14(R5-3500U)在ubuntu20.04下的WIFI(给内核签名了但是不能用)

    配置 惠普(HP)星14(R5-3500U)在ubuntu20.04下的WIFI 20:29 2020/2/15 星期六 https://item.jd.com/100010409532.html 惠 ...

  6. ROS联合Webots实现3d建图(一)Ubuntu20.04 A_LOAM环境搭建(完美运行)

    ROS联合Webots实现3d建图(一)Ubuntu20.04 A_LOAM环境搭建(完美运行) 注意: 再学习本系列教程时,应该已经安装过ROS了并且需要有一些ROS的基本知识 ubuntu版本:2 ...

  7. Ubuntu20.04下配置深度学习环境

    文章目录 一.安装Anaconda 1.安装Anaconda 2.区分ubuntu系统中自带的python与Anaconda中带的python 3.创建一个深度学习环境 二.安装cuda与cudnn ...

  8. ubuntu20.04下CLion2020.1.3安装配置ROS过程说明

    ** ubuntu20.04下CLion2020.1.3安装配置ROS过程说明 ** 一 下载安装激活CLion 按照网上给的教程就可以 二 配置ROS 1.配置CLion的启动方式 在主目录打开隐藏 ...

  9. ubuntu20.04下安装Kdevelop并实现图像ORB特征匹配

    ubuntu20.04下安装Kdevelop并实现图像ORB特征匹配 安装Kdevelop 图像ORB匹配 **CMakelists.txt文件** **使用kdevelop实现orb特征匹配** 安 ...

最新文章

  1. CentOS7下启动Nginx出现Failed to start nginx.service:unit not found
  2. win7实用技巧之十——卷影副本
  3. 成功解决VM虚拟机内This compute has only 713.3MB disk space remaning
  4. 二叉树的遍历:前序、中序、后序遍历
  5. vim 命令学习(高级篇)
  6. Android 手势解锁 GestureLock的使用和简单修复
  7. 青年节寄语和新课程免费上架
  8. C语言学习笔记---指针和数组
  9. Leetcode每日一题:33.search-in-rotated-sorted-array(搜索旋转排序数组)
  10. echo 多行_分享laravel-echo-server广播服务搭建-Laravel
  11. Java在线反编译器
  12. 《深入理解nginx》总结
  13. ARM嵌入式开发,高通MSM8937核心板h
  14. 网站接入qq客服在线聊天
  15. 测试自动化的三波浪潮
  16. 鸿蒙十大凶兽排名,上古十大神兽|上古十大洪荒神兽|上古十大神兽资料大全【图文】...
  17. ccsa安学网小程序_CCSA安学网题库
  18. 对 VoIP 提供商的大规模 DDoS 攻击和模拟 DDoS 测试
  19. C语言实现LDPC的校验矩阵,LDPC码及其译码实现….doc
  20. asp mysql 查询_ASP基础教程:数据库查询语言(1)

热门文章

  1. Hive第一天——Hive介绍以及简单使用
  2. 1.2 随机事件及其概率
  3. 3、jQuery插件之datetimepicker时间插件
  4. Unity中人物描边的“近大远小”优化
  5. mysql两个时间比较,Java架构师成长路线
  6. html只选择年份,原生jQuery实现只显示年份下拉框
  7. 南加州大学计算机科学案例,南加州大学计算机科学硕士录取
  8. MySQL重要知识点(转载微信公众号)
  9. brpc internal
  10. 百度地图自定义地图类型瓦片底图