Hey Construct team,
i followed your tutorial on Open Class n.165
After colcon build i got this error:
Starting >>> nav2_gradient_costmap_plugin
--- stderr: nav2_gradient_costmap_plugin
/home/nartmangnourt/follower_ws/src/nav2_gradient_costmap_plugin/src/gradient_layer.cpp: In member function ‘virtual void nav2_gradient_costmap_plugin::GradientLayer::onInitialize()’:
/home/nartmangnourt/follower_ws/src/nav2_gradient_costmap_plugin/src/gradient_layer.cpp:70:21: error: ‘using SharedPtr = class std::shared_ptr<rclcpp_lifecycle::LifecycleNode>’ {aka ‘class std::shared_ptr<rclcpp_lifecycle::LifecycleNode>’} has no member named ‘lock’
70 | auto node = node_.lock();
| ^~~~
make[2]: *** [CMakeFiles/nav2_gradient_costmap_plugin_core.dir/build.make:76: CMakeFiles/nav2_gradient_costmap_plugin_core.dir/src/gradient_layer.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:137: CMakeFiles/nav2_gradient_costmap_plugin_core.dir/all] Error 2
make: *** [Makefile:146: all] Error 2
---
Failed <<< nav2_gradient_costmap_plugin [2.41s, exited with code 2]
So i commented out the lock() method in the gradien_layer.cpp:
//auto node = node_.lock();
auto node = node_;
After this change, colcon build works.
Unfortunately the robot can still move although the costmap is set to max do you know why?:
i using Ubuntu 20.04 foxy.
Thank you so much for any help.