news 2026/7/11 19:50:01

ubuntu 20.04 ros1 noetic环境复现 lego-loam 过程出现 mapOptmization-7] process has died 问题解决(个人经验)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
ubuntu 20.04 ros1 noetic环境复现 lego-loam 过程出现 mapOptmization-7] process has died 问题解决(个人经验)

复现lego-loam时,使用github 官方 bag文件。报错图片如下:

具体报错如下:
[mapOptmization-7] process has died [pid 3677, exit code -11, cmd /home/reicom2025/LeGOLAOM_ws/devel/lib/lego_loam/mapOptmization __name:=mapOptmization __log:=/home/reicom2025/.ros/log/32df3f74-7b80-11f1-8cf9-998f20430ff7/mapOptmization-7.log].
log file: /home/reicom2025/.ros/log/32df3f74-7b80-11f1-8cf9-998f20430ff7/mapOptmization-7*.log

此时gtsam版本为4.0.2,使用系统自带的pcl版本。

观看别人的csdn经验。最终复现成功,整体流程大概为以下三点。

第一依赖库的安装,第二lego-loam源码编译,第三修改cpp文件重新编译,显示点云地图。

第一依赖库的安装

源码安装gtsam4.1.0版本

改变gtsam版本,源码安装,使用4.1.0版本(先卸载之前的gtsam版本,不会就问AI,先清楚是apt还是源码安装)

# 安装依赖
sudo apt install libboost-all-dev libtbb-dev
# 获取指定版本
git clone -b 4.1.0 https://github.com/borglab/gtsam.git
cd gtsam && mkdir build && cd build
# 关键配置参数
cmake -DGTSAM_BUILD_WITH_MARCH_NATIVE=OFF ..
make -j$(nproc)
sudo make install

编译过程中失败,这里我编译错误,问AI,编译成功即可

pcl方面

编译成功后检测这些pcl模块

pcl_viewer -h # 测试可视化模块
pcl_ply2pcd -h # 测试格式转换

进行检测有没有安装成功,没有进行安装,好像有安装指令提醒。

opencv方面

以下指令进行检查

# 检查已安装模块
pkg-config --modversion opencv4
# 补充安装可能缺失的模块
sudo apt install libopencv-calib3d-dev libopencv-contrib-dev

成功进行第二流程。

第二源码编译

git 源码

git 源码,进行修改编译源码,编译成功后有报错

mkdir -p ~/lego_ws/src
cd ~/lego_ws/src
git clone --recursive https://github.com/RobustFieldAutonomyLab/LeGO-LOAM.git
# 修复常见的子模块问题
cd LeGO-LOAM && git submodule update --init --recursive

编译前的准备

之后更改Cmakelists.txt c++11 --为c++ 14
utility.h 中#include <opencv/cv.h>注释改为 #include<opencv2/imgproc.hpp>

#include <pcl/kdtree/kdtree_flann.h>放到修改的opencv上面。

编译

回到工作空间进行编译。

cd ~/lego_ws
catkin_make -j1 # 首次编译
catkin_make -j$(nproc) --cmake-args -DCMAKE_BUILD_TYPE=Release # 后续编译

编译成功后记得

source devel/setup.bash

或者在bash.rc文件下改

之后启动roslaunch lego_loam run.launch

数据集准备

编译成功同时,bag文件去lego-loam github官方随便下个就行。

编译后的一些问题

不报这个 [mapOptmization-7] process has died错误了(好像是这样,具体有点忘记了),但是rviz还是出现报错说Failed to transform from frame [/camera] to frame [map]之类的,点云地图也没有显示。进入第三步。

第三修改cpp文件,显示点云地图。

修改lego-loam cpp文件 cpp文件中的/camera 部分改为camera 保存重新编译。成功后,增加话题如下图。

改变size为0.03及以上。即可显示点云地图。

个人经验。

也有说安装以下文件的

sudo apt-get update -y

sudo apt-get install -y libparmetis-dev

链接如下:Lego-Loam 运行错误解决方案_[mapoptmization-7] process has died-CSDN博客

也有加动态链接的

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
roslaunch lego_loam run.launch 链接如运行lego_loam报错[mapOptmization-7] process has died [pid 11653, exit code 127, cmd /home/p/legoloam/dev-CSDN博客

可以参考一下:

主要参考csdn链接:

保姆级避坑指南:Ubuntu 20.04 + ROS Noetic 下编译运行 LeGO-LOAM 全流程-CSDN博客

如果有在ros noetic下复现Lio-sam的可以参考这个链接

Ubuntu20.04 ROS noetic中编译和运行LIO-SAM_ros noetic lio sam-CSDN博客

不过我没有两个同时进行操作复现。

个人经验,仅供参考,链接已经指出。如有不妥,马上删除。

第一次写有点乱,还请见谅

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/11 19:49:53

HAC++:3D高斯泼溅模型超百倍压缩算法原理与实战部署

1. 项目概述&#xff1a;HAC是什么&#xff0c;以及它为何重要 最近在三维重建和神经渲染的圈子里&#xff0c;HAC这个名字开始频繁出现。作为一个长期关注3D内容压缩和传输效率的从业者&#xff0c;我第一时间去扒了它的论文和代码。简单来说&#xff0c;HAC是一个针对“3D高…

作者头像 李华
网站建设 2026/7/11 19:48:09

UE日志系统全解析:从基础调试到高级性能优化实战

1. 项目概述&#xff1a;为什么说“玩转日志”是UE开发者的必修课&#xff1f;在虚幻引擎&#xff08;UE4/UE5&#xff09;的开发过程中&#xff0c;调试是贯穿始终的核心环节。无论是追踪一个诡异的运行时崩溃&#xff0c;还是分析复杂的游戏逻辑流程&#xff0c;抑或是优化性…

作者头像 李华
网站建设 2026/7/11 19:47:37

具身智能领域常见机器人平台与数据格式

VLA 领域常见机器人平台与数据格式调研 面向具身智能 / VLA 模型学习者&#xff0c;整理主流机器人平台、数据集、数据格式及动作空间设计。 目录 文章目录VLA 领域常见机器人平台与数据格式调研目录1. 机器人平台分类1.1 单臂协作机器人Franka Emika / Franka Research 3 (Pan…

作者头像 李华
网站建设 2026/7/11 19:47:01

Hadoop HDFS 与 Linux 本地文件系统操作对比:10 个核心命令的差异与实战

Hadoop HDFS 与 Linux 本地文件系统操作对比&#xff1a;10 个核心命令的差异与实战当大数据开发者从传统Linux环境转向Hadoop生态时&#xff0c;文件系统操作的思维转换往往成为第一个门槛。HDFS虽然借鉴了Linux文件系统的设计理念&#xff0c;但分布式架构带来的特性差异直接…

作者头像 李华