Installing previous version of ROS2 dashing [closed]

asked 2020-06-01 01:19:19 -0500

fuji gravatar image

updated 2020-06-01 04:28:19 -0500

gvdhoorn gravatar image

I want to build a system with the following configuration.

ROS2 dashing (master branch,source build, rclcpp dependency tag:0.7.0)

Navigation2 (master branch,source build ,Commit:226f06)


link teb_local_planner

I heard that teb_local_planner has been checked by Navigation2 (Commit:226f06), so I would like to reproduce the environment.

When building Navigation2 (source build ,Commit:226f06) with the latest dashing, I get an error about the version of rclcpp.

Therefore, I would like to introduce RCLCPP, RMW and other versions from the current 1.X.X to around 0.7.0.

In the official build operation

$ vcs import src < ros2.repos

then the latest dependencies will be installed. Is there a way to install all the dependencies of the previous version at once? Please let me know if anyone can help.

The following is the error that occurred when trying to introduce Navigation2 with the latest dashing. 

--- stderr: nav2_lifecycle_manager                                                                                 
/home/fujimoto/navigation2_ws/src/navigation2/nav2_lifecycle_manager/src/lifecycle_manager_client.cpp: In member function ‘bool nav2_lifecycle_manager::LifecycleManagerClient::navigate_to_pose(double, double, double)’:
/home/fujimoto/navigation2_ws/src/navigation2/nav2_lifecycle_manager/src/lifecycle_manager_client.cpp:159:50: error: ‘std::shared_future<rclcpp_action::ClientGoalHandle<ActionT>::WrappedResult> rclcpp_action::ClientGoalHandle<ActionT>::async_result() [with ActionT = nav2_msgs::action::NavigateToPose]’ is deprecated: use rclcpp_action::Client::async_get_result() instead [-Werror=deprecated-declarations]
   auto future_result = goal_handle->async_result();
In file included from /home/fujimoto/ros2_dashing/install/rclcpp_action/include/rclcpp_action/client_goal_handle.hpp:180:0,
                 from /home/fujimoto/ros2_dashing/install/rclcpp_action/include/rclcpp_action/client.hpp:39,
                 from /home/fujimoto/ros2_dashing/install/rclcpp_action/include/rclcpp_action/rclcpp_action.hpp:36,
                 from /home/fujimoto/navigation2_ws/src/navigation2/nav2_lifecycle_manager/include/nav2_lifecycle_manager/lifecycle_manager_client.hpp:25,
                 from /home/fujimoto/navigation2_ws/src/navigation2/nav2_lifecycle_manager/src/lifecycle_manager_client.cpp:15:
/home/fujimoto/ros2_dashing/install/rclcpp_action/include/rclcpp_action/client_goal_handle_impl.hpp:60:1: note: declared here
cc1plus: all warnings being treated as errors
make[2]: *** [CMakeFiles/nav2_lifecycle_manager_core.dir/src/lifecycle_manager_client.cpp.o] Error 1
make[1]: *** [CMakeFiles/nav2_lifecycle_manager_core.dir/all] Error 2
make: *** [all] Error 2
edit retag flag offensive reopen merge delete

Closed for the following reason the question is answered, right answer was accepted by fuji
close date 2020-06-08 20:14:21.179266


Not the expected answer, but it would probably be better to fix the problems of teb_local_planner in the current ROS2. I will try to work on it soon, but you might want to try it too if you want it to work now. I think there is not much to change. EDIT: oh, you want dashing. There were lots of changes between dashing and eloquent in ROS navigation. I don't recommend to use dashing.

croesmann gravatar image croesmann  ( 2020-06-01 04:27:26 -0500 )edit

Ditto. Eloquent fixed a TON of really important things. Unless you really know what you’re doing and that’s what you want, I wouldn’t advise it.

stevemacenski gravatar image stevemacenski  ( 2020-06-02 01:28:47 -0500 )edit

@croesmann Thank you very much for your response. It would be great if teb_local_planner could be modified to work with the latest dashing and Navigation2 environments. Thank you for your support.

@stevemacenski Thank you for the information about eloquent. I have to use a version of dashing for internal reasons, but certainly dashing is not very stable, so I'd like to use eloquant if I could.

fuji gravatar image fuji  ( 2020-06-02 04:17:41 -0500 )edit

sorry, I can't help you with dashing. I meant fixing it for eloquent or even foxy (there were too many changes between dashing and eloquent). Also, what I remember is that the teb_local_planner did not work with the dashing nav2 release, but only with some version from the master branch at that time (but that required compiling the whole dashing core packages from source as well if I remember correctly, it was a pain).

croesmann gravatar image croesmann  ( 2020-06-02 04:21:49 -0500 )edit

Sorry, I missed your edit. As you pointed out, I was trying to reproduce the specific version of the Master branch of Navigation2 that was listed on teb_local_planner's github. I tried to recreate the environment of the ROS master branch at the time of commit, but it seems to be difficult. Thank you very much. teb_local_planner is a very good package, so I hope you will continue to develop it in the future.

fuji gravatar image fuji  ( 2020-06-02 04:43:29 -0500 )edit