(1)fmt安装
我使用的是高翔SLAM十四讲的数据,由于代码采用的是模板类的sophus库,需要先安装fmt:
git clone https://github.com/fmtlib/fmt.git
打开下载好的文件,在终端上运行以下命令:
mkdir build
cd build
cmake ..
make
sudo make install
(2)Sophus安装
使用高翔提供的3rdparty文件下的“sophus”或者终端输入:
git clone https://github.com/strasdat/Sophus.git
打开Sophus文件,终端输入:
mkdir build
cd build
cmake ..
sudo make install
(3)高翔ch4代码中出现的问题以及解决方法
useSophus代码中,在CmakeLists.txt文件中添加fmt以及设置绝对路径,完整内容如下
cmake_minimum_required(VERSION 2.8)
project(useSophus)
# 为使用 sophus,需要使用find_package命令找到它
find_package(Sophus REQUIRED)
include_directories(${Sophus_INCLUDE_DIRS})
# Eigen
include_directories("/usr/include/eigen3")
# 根据自己安装Sophus的绝对位置来填写
include_directories( "/home/zhang/桌面/slambook2/3rdparty/Sophus" )
add_executable(useSophus useSophus.cpp)
# 添加的fmt
target_link_libraries( useSophus ${Sophus_LIBRARIES} fmt)
在useSophus.pp中添加,确定头文件后缀都为.hpp
#include "sophus/so3.hpp"