复现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.gitcd gtsam mkdir build cd build# 关键配置参数cmake -DGTSAM_BUILD_WITH_MARCH_NATIVEOFF ..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/srccd ~/lego_ws/srcgit clone --recursive https://github.com/RobustFieldAutonomyLab/LeGO-LOAM.git# 修复常见的子模块问题cd LeGO-LOAM git submodule update --init --recursive编译前的准备之后更改Cmakelists.txt c11 --为c 14utility.h 中#include opencv/cv.h注释改为 #includeopencv2/imgproc.hpp#include pcl/kdtree/kdtree_flann.h放到修改的opencv上面。编译回到工作空间进行编译。cd ~/lego_wscatkin_make -j1 # 首次编译catkin_make -j$(nproc) --cmake-args -DCMAKE_BUILD_TYPERelease # 后续编译编译成功后记得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 -ysudo apt-get install -y libparmetis-dev链接如下Lego-Loam 运行错误解决方案_[mapoptmization-7] process has died-CSDN博客也有加动态链接的export LD_LIBRARY_PATH$LD_LIBRARY_PATH:/usr/local/libroslaunch 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博客不过我没有两个同时进行操作复现。个人经验仅供参考链接已经指出。如有不妥马上删除。第一次写有点乱还请见谅