cartogrpher2020在 ubuntu16.04编译
时间:2020-03-12 12:14:19
收藏:0
阅读:397
原理阐述:下载github上的abseil,然后单独编译这个库,然后更改部分cartographer和cartographer_ros的代码即可。
详细步骤:
一:下载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
二:更改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的CMakeList.txt,有2处
cartographer_ros 和 cartographer_rviz的改法均一致
find_package(Abseil REQUIRED) --> find_package(absl REQUIRED)
然后重新编译即可。
本实验经过验证,可行通过
原文:https://www.cnblogs.com/Baron-Lu/p/12468136.html
评论(0)