ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | Q&A
Ask Your Question

how to install Move_base action lib message

asked 2014-04-01 22:47:34 -0600

Maya gravatar image

updated 2014-04-02 04:20:40 -0600


I'm trying to follow the tutorial from here so i created the package but I have this error :

-- ==> add_subdirectory(simple_navigation_goals)
CMake Error at /opt/ros/groovy/share/catkin/cmake/catkinConfig.cmake:72 (find_package):
Could not find a configuration file for package move_base_msgs.

Set move_base_msgs_DIR to the directory containing a CMake configuration
file for move_base_msgs.  The file will have one of the following names:


Call Stack (most recent call first):
simple_navigation_goals/CMakeLists.txt:7 (find_package)

I guess it's because I miss some package but I have all those installed already :

ros@ros-K56CM:~$ dpkg -l | grep navigation
ii  libdvdnav4                                  4.2.0-1                                             DVD navigation library
ii  ros-groovy-common-msgs                      1.9.17-0precise-20131011-0455-+0000                 common_msgs contains messages that are widely used by other ROS packages. These includes messages for actions (actionlib_msgs), diagnostics (diagnostic_msgs), geometric primitives (geometry_msgs), robot navigation (nav_msgs), and common sensors (sensor_msgs), such as laser range finders, cameras, point clouds.
ii  ros-groovy-nav-msgs                         1.9.17-0precise-20131011-0140-+0000                 nav_msgs defines the common messages used to interact with the navigation stack.
ii  ros-groovy-navigation                       1.10.3-s1387754744~precise                          planar navigation stack
ii  ros-groovy-navigation-tutorials             0.1.1-s1387953507~precise                           navigation_tutorials
ii  ros-groovy-rqt-nav-view                     0.3.1-0precise-20131016-0109-+0000                  rqt_nav_view provides a gui for viewing navigation maps and paths.


rospack find move_base_msgs

the CmakeLists :

cmake_minimum_required(VERSION 2.8.3)

## Find catkin macros and libraries
## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz)
## is used, also find other catkin packages
find_package(catkin REQUIRED COMPONENTS

#  INCLUDE_DIRS include
#  LIBRARIES simple_navigation_goals
#  CATKIN_DEPENDS actionlib move_base_msgs roscpp
#  DEPENDS system_lib


add_executable(simple_navigation_goals src/hello.cpp)
target_link_libraries(simple_navigation_goals ${catkin_LIBRARIES})

Package.xml :

<?xml version="1.0"?>
<description>The simple_navigation_goals package</description>


edit retag flag offensive close merge delete


can you add the output of `rospack find move_base_msgs` to your question?

demmeln gravatar image demmeln  ( 2014-04-02 03:23:54 -0600 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2014-04-02 03:48:35 -0600

demmeln gravatar image

updated 2014-04-02 04:50:39 -0600

The correct package is installed, as you can see from the rospack command (the package is actually ros-groovy-navigation).

Please post the contents of your CMakeLists.txt and package.xml. Likely there is a missing declaration of the the dependency on move_base_msgs that is causing your cmake error.

Edit: aha, I didn't realize at first but the navigation stack in groovy is still not catkinized, so you can not use it in catkin packages. Either update to hydro, or use rosbuild/rosmake in for your package as well.

edit flag offensive delete link more


Can I let every other part of the project under catkin and just the node that use the navigation stack under rosbuild/rosmake ?

Maya gravatar image Maya  ( 2014-04-03 06:00:13 -0600 )edit

Maybe. It depends on the dependencies within your project. As a general rule, dry packages ( = rosbuild) can depend on dry packages and wet packages ( = catkin). On the other hand wet packages cannot depend on dry packages.

demmeln gravatar image demmeln  ( 2014-04-03 06:58:35 -0600 )edit

So anything that depends on the navigation stack, either directly or indirectly will have to use rosbuild. But your package that depends on navigation, can perfectly fine depend on other catkin packages in your project.

demmeln gravatar image demmeln  ( 2014-04-03 06:59:27 -0600 )edit

Here this package send goals to the move_base node. It's the only one that needs the navigation dependancies right? I mean for example I see no reason for my node publishingthe Odometry to can't be on catkin. Am I right?

Maya gravatar image Maya  ( 2014-04-03 07:45:51 -0600 )edit

That is correct, as long as it does not depend on the package that depends on navigation. Sounds like this is the case. I'm not sure what other packages in groovy besides the navigation stack are dry, so you have to also watch out for those if you depend on them.

demmeln gravatar image demmeln  ( 2014-04-03 07:52:17 -0600 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower


Asked: 2014-04-01 22:47:34 -0600

Seen: 4,233 times

Last updated: Apr 02 '14