compilation error Nav2 Galactic release

asked 2021-07-07 00:32:40 -0600

prince gravatar image

updated 2021-07-08 03:29:32 -0600

Greetings,

I am compiling Nav2 (downloaded from official git with instructions from official page , Galactic branch) for Galactic Release of ROS on Ubuntu 20.04. I have compiled ROS2 Galactic from source as well. I am overlaying the workspaces. I am facing following compilation error.

[Processing: nav2_util]                                        
--- stderr: nav2_util                                          
In file included from /home/user/code/nav2_ws_06July2021/src/navigation2/nav2_util/src/lifecycle_node.cpp:15:
/home/user/code/nav2_ws_06July2021/src/navigation2/nav2_util/include/nav2_util/lifecycle_node.hpp:25:10: fatal error: bondcpp/bond.hpp: No such file or directory
   25 | #include "bondcpp/bond.hpp"
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
In file included from /home/user/code/nav2_ws_06July2021/src/navigation2/nav2_util/include/nav2_util/odometry_utils.hpp:29,
                 from /home/user/code/nav2_ws_06July2021/src/navigation2/nav2_util/src/odometry_utils.cpp:18:
/home/user/code/nav2_ws_06July2021/src/navigation2/nav2_util/include/nav2_util/lifecycle_node.hpp:25:10: fatal error: bondcpp/bond.hpp: No such file or directory
   25 | #include "bondcpp/bond.hpp"

I have installed libbondcpp-dev (ver 1.8.3-2ubuntu1) using system release debs. But it has nos solved the problem. I have earlier enquired about similar question. Am I missing some dependency installation instruction? To the best of my knowledge, i have followed the instructions verbatim as mentioned on the official nav2 documentation page.

EDIT 1: console output for rosdep run.

$ rosdep install -y -r -q --from-paths src --ignore-src --rosdistro galactic
executing command [sudo -H apt-get install -y -qq ros-galactic-slam-toolbox]
E: Unable to locate package ros-galactic-slam-toolbox
executing command [sudo -H apt-get install -y -qq ros-galactic-gazebo-ros-pkgs]
E: Unable to correct problems, you have held broken packages.
ERROR: the following rosdeps failed to install
  apt: command [sudo -H apt-get install -y -qq ros-galactic-slam-toolbox] failed
  apt: command [sudo -H apt-get install -y -qq ros-galactic-gazebo-ros-pkgs] failed
  apt: Failed to detect successful installation of [ros-galactic-slam-toolbox]
  apt: Failed to detect successful installation of [ros-galactic-gazebo-ros-pkgs]

Is it possible that galactic binary release still do not contain all the debs?

$sudo apt search ros-galactic-slam-toolbox
Sorting... Done
Full Text Search... Done
edit retag flag offensive close merge delete

Comments

if you ran rosdeplike the build instructions mention, you should have it, but you're probably missing this repo: https://github.com/ros/bond_core (at branch ros2)

christophebedard gravatar image christophebedard  ( 2021-07-07 08:41:23 -0600 )edit

Yes, you are right. I have missed rosdep command. But not all dependencies are available as deb package. Probably the galactic sync has not happened !

prince gravatar image prince  ( 2021-07-08 03:26:31 -0600 )edit

ah yeah they do seem to simply be missing in Galactic. Looks like it should be synced next week https://discourse.ros.org/t/preparing.... In the meantime you can try to build it all from source.

christophebedard gravatar image christophebedard  ( 2021-07-08 10:17:35 -0600 )edit