根据本人安装步骤下的slambook2例程代码错误及修改

目录

前篇:ubuntu20下slambook2环境安装及问题解决

一、Eigen(ch3)

问题一:

问题二:

二、Sophus(ch4)

问题一:

三、OpenCV(ch5)

问题一:

问题二:

四、g2o(ch6)

问题一:

五、参考


前篇:ubuntu20下slambook2环境安装及问题解决

一、Eigen(ch3)

问题一:

Eigen有路径问题,它被下载到"/usr/local/include/eigen3"和"/usr/include/eigen3"中,使用vsc时,会划红色波浪线--#include错误,请更新includePath

我们只需将"/usr/local/include/eigen3"或"/usr/include/eigen3"中的Eigen剪切到上级目录,即"/usr/local/include/"或"/usr/include/"中即可。"eigen3"下打开终端。

sudo mv ./Eigen ..

之后的类似问题雷同。

问题二:

这是CMakelists.txt有问题。原:

只需修改第四行即可,原因是当时写这个代码的库的版本太老,因此c++标准是c++11即可,而我们下的库版本太新,用到了c++新版本的东西。改:

二、Sophus(ch4)

问题一:

同一、Eigen问题二,改:

注意:第九行的Eigen导入路径,我改的是"./usr/include/eigen3"中的Eigen,因此我这里没改,如果你改的是图中路径的Eigen,要把该CMakelists.txt的Eigen改一下。

三、OpenCV(ch5)

问题一:

同一、Eigen问题二,改下c++标准。

问题二:

原因是缺少参数输入,因此只要在后面参数传入一个图像路径即可。改:

四、g2o(ch6)

问题一:

c++标准改为17之后,报错:

看来不是c++标准的问题,根据参考[1],我当前时间下的是最新的g2o(20230806_git),我决定重装为20230223_git:

卸载g2o,参考[2]。

重新编译安装:

github:20230323_git下载

我选择根据下载的g2o文档"README.md"进行编译重装。

sudo apt install libeigen3-dev libspdlog-dev libsuitesparse-dev qtdeclarative5-dev qt5-qmake libqglviewer-dev-qt5
cd g2o-20230223_git
mkdir build && cd build
cmake ..
make -j8
sudo make install

编译slambook2/ch6成功!

五、参考

参考[1]:error: ‘make_unique’ is not a member of ‘g2o’ 的参考解决方法

参考[2]:ubuntu卸载g2o库

  • 19
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值