1. 程式人生 > >ros:編譯navigation

ros:編譯navigation

1 下載導航包

git clone https://github.com/ros-planning/navigation_experimental.git

2 processing catkin package: ‘map_server’ 缺少Could NOT find Bullet CMake Error at /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:108 (message): Could NOT find Bullet (missing: BULLET_DYNAMICS_LIBRARY BULLET_COLLISION_LIBRARY BULLET_MATH_LIBRARY BULLET_SOFTBODY_LIBRARY BULLET_INCLUDE_DIR) Call Stack (most recent call first): /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:315 (_FPHSA_FAILURE_MESSAGE) /usr/share/cmake-2.8/Modules/FindBullet.cmake:76 (FIND_PACKAGE_HANDLE_STANDARD_ARGS) navigation/map_server/CMakeLists.txt:11 (find_package)

解決辦法:

sudo apt-get install libbullet-dev

3 cmake版本低——CMake Error at navigation/amcl/CMakeLists.txt:1 (cmake_minimum_required): CMake 3.1 or higher is required. You are running version 2.8.12.2

解決辦法:

sudo apt-get install cmake3

安裝完後的版本為: cmake version 3.5.1

4 cost_map找不到eigen3 – Using these message generators: gencpp;genlisp;genpy CMake Error at navigation/costmap_2d/CMakeLists.txt:26 (find_package): By not providing “FindEigen3.cmake” in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by “Eigen3”, but CMake did not find one.

解決辦法:

 gedit src/navigation/costmap_2d/CMakeLists.txt

由於cmake3.5中沒有findEigen3,所以拷貝一下;

sudo cp /usr/share/cmake-2.8/Modules/FindEigen3.cmake /usr/share/cmake-3.5/Modules/