SLAM疑难篇一:ceres安装和编译报错——实践高翔SLAM十四讲

要点总结

安装ceres如果遇到报错,那么绝大多数的原因是和ceres依赖的eigen、cmake的版本有关系

这里参考官网的说明文档:链接

第一次失败

下载的高翔的SLAM十四讲源码,直接解压3rdparty/ceres-solver.tar.gz,然后进入文件夹mkdir一个build文件夹,内部cmake,就出错了

查阅了一些资料发现,高翔的SLAM源码里的ceres的版本有点陈旧,应该在官网下载最新的稳定版本,并且依赖项也需要更换成匹配的版本,ceres官网链接写的很清楚(TIPS:链接在上方,不熟悉英文的朋友可以用谷歌翻译插件对页面进行翻译)

Eigen 3.2.2 or later strongly recommended, 3.1.0 or later required.
CMake 2.8.0 or later. Required on all platforms except for Android.
glog 0.3.1 or later. Recommended

改进方案

查看你的依赖的eigen库

ceres官网显示3.2.2以上版本强烈建议,因此先查看自己的eigen版本

vim  /usr/include/eigen3/Eigen/src/Core/util/Macros.h

SLAM疑难篇一:ceres安装和编译报错——实践高翔SLAM十四讲_第1张图片

可以看到,我的eigen版本是3.3.4,满足了官网的条件,因此进行下一步

下载ceres最新稳定版

从官网下载ceres-solver-1.14.0.tar.gz,点击红框处下载latest stable release最新稳定版

SLAM疑难篇一:ceres安装和编译报错——实践高翔SLAM十四讲_第2张图片

如果官网打不开,这里放一个分享地址,

提取码:rhh8

移入ubuntu并安装

解压缩下载的tar.gz文件,通过winscp将该文件发送到ubuntu内

cd ceres-solver-1.14.0
mkdir build
cd build
cmake ..
make -j2 (我的虚拟机是双核的,因此-j2;此步骤耐心等待)
sudo make install

make 后如果显示100%完成,则成功;最后sudo make install

SLAM疑难篇一:ceres安装和编译报错——实践高翔SLAM十四讲_第3张图片

结语

按照这个步骤,博主的问题都得到了解决

如果对你有帮助,还请点赞、收藏!

你可能感兴趣的:(SLAM学习,ubuntu,linux,ceres-solver,SLAM,机器人,slam,十四讲,代码,pdf,完整版)