参考:Cartographer
为方便安装SLAM依赖项及各软件包,提前下载所需软件并打包,如:cartographer、ceres-solver、g2o-master等,并编写bash脚本文件,方便后续统一安装
其中,依赖项build_dependencies.sh如下所示:
##################################################
export PATH_DEPENDS=/home/robotli/FERRARI/ferrari_station
export PATH_OUTPUTS=/home/robotli/BuildCodes
##################################################
sudo apt-get update
sudo apt-get install \
clang \
cmake \
g++ \
git \
google-mock \
libboost-all-dev \
libcairo2-dev \
libcurl4-openssl-dev \
libeigen3-dev \
libgflags-dev \
libgoogle-glog-dev \
liblua5.2-dev \
libsuitesparse-dev \
lsb-release \
ninja-build \
stow
#sudo python-wstool python-rosdep python-sphinx libatlas-base-dev
sudo apt-get install libgmock-dev
#################################################################
#mkdir ${PATH_OUTPUTS}/build_codes
#################################################################
cd ${PATH_OUTPUTS}
mkdir build_codes
cd build_codes
mkdir build_ceres
cd build_ceres
cmake ${PATH_DEPENDS}/ceres-solver -DCXX11=ON
make -j$(nproc)
sudo make install
#################################################################
cd ${PATH_OUTPUTS}/build_codes
mkdir build_protobuf
cd build_protobuf
cmake \
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
-DCMAKE_BUILD_TYPE=Release \
-Dprotobuf_BUILD_TESTS=OFF \
${PATH_DEPENDS}/protobuf/cmake
make -j$(nproc)
sudo make install
#################################################################
cd ${PATH_OUTPUTS}/build_codes
mkdir build_absl
cd build_absl
cmake \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
-DCMAKE_INSTALL_PREFIX=/usr/local/stow/absl \
${PATH_DEPENDS}/absei