环境:
Ubuntu 18.04
ROS Melodic
一、目的
用过 cartographer 的朋友都知道,cartographer 官方使用的编译方式是 catkin_make_isolated ,这个编译方式很好很优秀,可以独立的编译各个功能包,也解决了catkin_make 存在的一些历史遗留问题,虽然但是,我还是不得不使用 catkin_make (允悲),原因是我已经使用QT作为我的程序开发IDE五年了,真心不想换别的了哈哈。但是QT这玩意儿不支持
catkin_make_isolated 构建,没法儿,又不能换了它,那只能想办法把 cartographer 的包编译方式改一改了。
二、干货
1、首先参照我的上一篇博客,把 glog 和 ceres-solver 1.13.0 编译安装好,链接如下:
Ubuntu18.04 + ROS Melodic 部署 Cartographer_ros_stan-coder的博客-CSDN博客
2、去我的 仓库 里把这个 cartographer 压缩包download下来,链接如下:
“等待上传审核通过中”(等不及的可以直接私信我)
3、解压 carto_build.zip ,并选择一个位置新建一个文件夹 cartographer ,然后进行如下操作:
cd carto_build/scripts
chmod +x install_abseil.sh
./install_abseil.sh
cd ../
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/home/rust/BOX/carto/cartographer ..
###
上面的这个路径就是你新建的 cartographer 文件夹的绝对路径
###
make install
4、接着解压 carto_ros.zip ,其实这里面就是一个已经改好 CMakeList 的 cartographer_ros 包,我们通常需要用到的也就是它,你可以把它放到你的工程目录里面去,这里只是展示可以编译通过
cd carto_ros/src
gedit platform_option.cmake
###
将里面的 /home/rust/BOX/carto/cartographer 这部分路径改成你那边的,也就是上一步你新建的cartographer文件夹绝对路径
###
cd ..
catkin_make
5、这样你就获得了一个可以 catkin make 的cartographer_ros 包啦!恭喜
三、写在后面
不知道有没有朋友需要知道如何用QT构建ROS工程不?如果有需要的话,可以留言,我后面再把那部分补上。