目录
一、模板类sophus(主要)、Eigen、ceres、fmt安装
一、模板类sophus(主要)、Eigen、ceres、fmt安装
报错一(cmake ..时):
根据参考[1]sophus之前的内容进行安装,但参考[1]安装的sophus是非模版的,而slambook2代码是模版的,因此我根据参考[2]安装fmt后再安装sophus。根据参考[1]apt下载的cmake的版本是3.16.3,而后面模版类sophus需求的cmake版本为3.24以上
如何升级cmake看参考[3]。
报错二(cmake ..时):
根据参考[1]来,本日期apt下载的eigen的版本是3.3.7,而模板类sophus需求的eigen版本为3.4.0以上
因此eigen需要自己下源代码进行编译安装。
因eigen之前是用apt下载,因此只需
sudo apt-get remove libeigen3-dev
sudo updatedb
就可卸载。
eigen升级看参考[4]。
报错三(cmake ..时):
再重新进行cmake文件生成模版sophus,出现
根据参考[1],ceres是在sophus之后再安装,这里需要将ceres在sophus之前安装,我下的是ceres2.2.0。
ceres安装看参考[5]。
报错三(make时):
在我make时,报错--c++: fatal error: 已杀死 signal terminated program cc1plus
原因及解决方案看参考[6]。
原因是内存不足,根据我的实验观察,内存加虚拟内存最起码要27G才把这个编译完。。。
二、OpenCV、PCL、g2o安装
1.OpenCV:
根据参考[7]即可,本日期时安装的是4.2.0版本。
若想选择更新版本,根据参考[8]即可。
2.PCL:
sudo apt-get install libpcl-dev pcl-tools
3.g2o:
原:根据参考[1]即可,不建议卸载原来的cmake,建议按照参考[3]重定位。
更新:请根据我的另一篇的参考[9]进行安装,避免遇到我相同的问题再重装。
三、Pangolin安装
报错(cmake ..时):
在根据参考[1]安装时,报错:
执行如下命令:
sudo apt-get install libepoxy-dev
四、DBoW3安装
报错(make时):
根据参考[1]。在make时:
在 C++11 及以后的版本中,动态异常说明(Dynamic Exception Specifications,即函数声明中使用的 throw(...)
)已经被弃用,并在 C++17 中被完全移除。
在第一步时安装的gcc和g++是9.4.0版:
也就是说可以不用管它,装鸵鸟。
五、octomap安装
报错(cmake ..时):
根据参考[1]。在cmake时:
同四装鸵鸟。。。
六、参考
参考[1]:Ubuntu18.04搭建 SLAM环境(完美避坑,版本对应不报错)
参考[2]:Sophus库安装踩坑(SLAM十四讲)
参考[3]:linux 下如何升级CMAKE?(安装指定版本cmake)(高版本cmake)(不删除之前的,可以用软链接)
参考[4]:ubuntu升级eigen到3.4.0
参考[5]:Ubuntu18.04安装Ceres,图文详解
参考[6]:【问题解决】C++: fatal error: Killed signal terminated program cc1plus
参考[7]:Linux安装OpenCV——利用包管理器apt从源仓库安装(绝对是最简单的安装方法)