嵌入式实践教程--cartographer2020在 ubuntu18.04编译

步骤一,安装所有的依赖项

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

二:下载abseil

网址:https://github.com/abseil/abseil-cpp.
安装abseil的静态库:

mkdir build && cd build
cmake ..
make
sudo make install

安装abseil的动态库:可以将之前的build文件删掉,重新建立

mkdir build && cd build
cmake ..  -DBUILD_SHARED_LIBS=ON
make
sudo make install

步骤三,安装ceres-solver-master:

git clone https://github.com/ceres-solver/ceres-solver.git
cd ceres-solver
mkdir build
cd build
cmake ..
make -j4
sudo make install

步骤四,cartographer(安装在根目录下):

git clone https://github.com/googlecartographer/cartographer.git
cd cartographer
mkdir build
cd build
cmake .. -G Ninja
ninja
ninja test
sudo ninja install

更改cartographer的CMakeList.txt文件(有2处)和cartographer-config.cmake.in文件(有1处)
CMakeList.txt 第1处:

find_package(Abseil REQUIRED) --> find_package(absl REQUIRED)
CMakeList.txt 第2处:#默认的库文件是 standalone_absl

target_link_libraries(${PROJECT_NAME} PUBLIC ${PROTOBUF_LIBRARY}
absl::base
absl::synchronization
absl::strings
absl::flat_hash_map
absl::numeric
absl::flags)

然后重新编译即可
cartographer-config.cmake.in 1处:

find_package(Abseil ${QUIET_OR_REQUIRED_OPTION}) Abseil 改为 absl

步骤五,安装cartographer_ros:

#初始化工作空间,我之前有一个工作空间为catkin_ws,我的命名为google_ws
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc
#安装cartographer_ros
cd ~/catkin_ws/src
git clone https://github.com/hitcm/cartographer_ros.git
cd ~/catkin_ws
catkin_make

更改cartographer_ros的CMakeList.txt,有2处cartographer_ros 和 cartographer_rviz的改法均一致

find_package(Abseil REQUIRED) --> find_package(absl REQUIRED)

然后重新编译即可。
本实验经过验证,可行通过

更多文章请关注公众号
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

漫游嵌入式

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值