概述
14讲中的第4讲,涉及到Sophus的安装与使用,其中遇到不少问题,加以记录备份。
由于高博的GitHub所提供的14讲第二版代码slambook2中,3rdparty文件夹没有第三方库的源码,需要使用git的submoudle功能管理本书依赖的第三方库,由于不会使用(简单查阅后发现资料较少,不想多花时间在这上面),所以还是通过GitHub直接下载源码进行编译安装,。
给出Sophus的GitHub地址:https://github.com/strasdat/Sophus.
直接下载下来(这里没有用git clone)进行解压,在解压所得文件夹进行编译安装,注意,下载得到的是模板类,不用回滚,第一版用的非模板类,才需要git clone把远程库down下来后git checkout a621ff将Sopuus回滚到之前非模板类的版本。
具体操作如下:
mkdir build
cd build
cmake ..
make
sudo make install
这里需要注意的是,书中提到只需编译,无需安装,
但这样的话执行程序经常找不到相应的头文件(除非每次你给出绝对路径),
错误如下图所示:
所以sudo make install这一步是必须的
执行此语句,命令行输出结果如下:
输出结果清楚表明了执行sudo make install后,头文件的安装路径" /usr/local/include/sophus"
之后在运行诸如slambook2/ch4中代码时就不会出现找不到头文件的错误了
上述结果可以看见有三个文件被安装到了share文件夹,share文件夹用于存储共享文件和帮助文档,
SophusConfigVersion.cmake里面可以查看当前版本,为1.1.0,另外两个不太清楚。
由于之后的开发环境使用的是qt creator,所以对cmake这块暂不深究,示例代码能跑就行。
对于头文件和库文件的安装位置清楚即可。
此外,Sophus库仅仅只有头文件,和Eigen一样。
参考资料:
Sophus库安装踩坑(SLAM十四讲)
仅参考Sophus部分即可,我通过系统软件源apt install命令安装的Eigen版本为3.3.4,版本满足要求,无需通过源码更新。
顺带一提,Eigen的版本可通过" /usr/include/eigen3/Eigen/src/Core/util/Macros.h"查看,如下图所示,版本为3.3.4
最后
以上就是专一哈密瓜为你收集整理的SLAM14讲中,涉及Sophus安装步骤及备注的全部内容,希望文章能够帮你解决SLAM14讲中,涉及Sophus安装步骤及备注所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复