1.安装依赖(ubuntu版本:ubutnu16.04.kinetic):
sudo apt-get install -y google-mock libboost-all-dev libeigen3-dev libgflags-dev libgoogle-glog-dev liblua5.2-dev libprotobuf-dev libsuitesparse-dev libwebp-dev ninja-build protobuf-compiler python-sphinx ros-kinetic-tf2-eigen libatlas-base-dev libsuitesparse-dev liblapack-dev
2.可以自己分别到github上下载对相应的包:
A -cartographer:git clone https://github.com/cartographer-project/cartographer
B -cartographer_ros: git clone https://github.com/cartographer-project/cartographer_ros
C- ceres_solver:git clone https://github.com/hitcm/ceres-solver-1.11.0
把这三个包下载到对应的空间,其中A,C包可以放在任意空间下,按如下步骤编译(和官方步骤不一样,但是问题少,安装速度快):
在cartographer和cere-solver包 mkdir build文件夹;然后cd build 执行cmake .. 然后make -j2(电脑性能不错可j4),注意这一步cartographer中可能会报错缺少abseil相关文件,在这里引用这位博主的解决方法:
但是我使用了这种方法还是报错,原因就是下载的abseil-cpp包里的cmakelists文件没有设置支持c++11,所以我在该cmakelists文件里加入一句命令:
然后继续安装上面的博主链接继续配置后,回到cartographer包继续安装步骤,顺利安装了一个包,A,C这两个包的安装过程很顺利。
在安装C包时我们需要,新建一个工作空间google_ws然后新建src文件夹,初始化工作空间(catkin_init_workspace)之后把C包放进src下,回到google_ws下执行catkin_make编译,不需要安装。最后就完成了cartographer整个安装过程