1.编译成功后运行出现:段错误(核心已转储)
原因:eigen版本问题,需要3.1版本
可以观看此优快云文章评论区获取解决方法思路参考
我不打算覆盖原有eigen版本
众所周知eigen3是一个纯头文件搭建的C++库,因此只要修改cmakelist文件引入头文件就行。
eigen版本查看:
pkg-config --modversion eigen3
从此处下载3.1版本
解压后得到
在Thirdparty中新建一个eigen3文件夹
把解压后一堆文件中的eigen文件夹复制进去
下面开始改写cmakelist文件
第一个
SET(EIGEN3_INCLUDE_DIR "请补全绝对路径/Thirdparty/eigen3")
#find_package(Eigen3 3.1.0 REQUIRED)
第二个:g2o里的cmakelist文件
改成这样
# Find Eigen3
SET(G2O_EIGEN3_INCLUDE "请补全绝对路径/Thirdparty/eigen3")
#SET(EIGEN3_INCLUDE_DIR ${G2O_EIGEN3_INCLUDE})
#FIND_PACKAGE(Eigen3 3.1.0 REQUIRED)
#IF(EIGEN3_FOUND)
# SET(G2O_EIGEN3_INCLUDE ${EIGEN3_INCLUDE_DIR} CACHE PATH "Directory of #Eigen3")
#ELSE(EIGEN3_FOUND)
# SET(G2O_EIGEN3_INCLUDE "" CACHE PATH "Directory of Eigen3")
#ENDIF(EIGEN3_FOUND)
注意!
SET(G2O_EIGEN3_INCLUDE “请补全绝对路径/Thirdparty/eigen3”)
里面我实际写的地址是绝对路径,为了保护隐私删去了一部分,请自行补全绝对路径
2.点云现示不正常解决
如下图所示
只要按R建就可以把现实恢复正常,这个颜色块其实是坐标轴原点
3.此程序本身存在的问题
1.灰色点云地图
2.不保存点云文件
请看我的博客解决
4.另一种段错误(核心已转储)解决方法及问题本质讨论
请见我的博客