Skip to content

Can this be run on ROS Melodic? #9

@ssr-diaries

Description

@ssr-diaries

I have tested this package on ROS Kinetic and works perfectly fine after solving some errors through the steps followed in the issues tab here.

But, I am trying to test it on ROS Melodic as that's what I am mainly working with and when I catkin_make. The following error appears:

"

/home/shreyas/catkin_ws/src/turtlebot_rrt/src/turtlebot_rrt.cc: In member function ‘std::pair<float, float> turtlebot_rrt::RRTPlanner::GetRandomPoint()’:
/home/shreyas/catkin_ws/src/turtlebot_rrt/src/turtlebot_rrt.cc:159:10: error: ‘random_device’ is not a member of ‘std’
std::random_device rd;
^~~~~~~~~~~~~
/home/shreyas/catkin_ws/src/turtlebot_rrt/src/turtlebot_rrt.cc:159:10: note: suggested alternative: ‘random_shuffle’
std::random_device rd;
^~~~~~~~~~~~~
random_shuffle
/home/shreyas/catkin_ws/src/turtlebot_rrt/src/turtlebot_rrt.cc:160:10: error: ‘mt19937’ is not a member of ‘std’
std::mt19937 gen(rd());
^~~~~~~
/home/shreyas/catkin_ws/src/turtlebot_rrt/src/turtlebot_rrt.cc:160:10: note: suggested alternatives:
In file included from /usr/include/boost/random.hpp:43:0,
from /home/shreyas/catkin_ws/src/turtlebot_rrt/include/turtlebot_rrt/turtlebot_rrt.h:62,
from /home/shreyas/catkin_ws/src/turtlebot_rrt/src/turtlebot_rrt.cc:37:
/usr/include/boost/random/mersenne_twister.hpp:624:61: note: ‘boost::random::mt19937’
11,0xffffffff,7,0x9d2c5680,15,0xefc60000,18,1812433253> mt19937;
^~~~~~~
/usr/include/boost/random/mersenne_twister.hpp:624:61: note: ‘boost::random::mt19937’
/home/shreyas/catkin_ws/src/turtlebot_rrt/src/turtlebot_rrt.cc:163:10: error: ‘uniform_real_distribution’ is not a member of ‘std’
std::uniform_real_distribution<> x(-map_width, map_width);
^~~~~~~~~~~~~~~~~~~~~~~~~
/home/shreyas/catkin_ws/src/turtlebot_rrt/src/turtlebot_rrt.cc:163:10: note: suggested alternative: ‘uniform_int_distribution’
std::uniform_real_distribution<> x(-map_width, map_width);
^~~~~~~~~~~~~~~~~~~~~~~~~
uniform_int_distribution
/home/shreyas/catkin_ws/src/turtlebot_rrt/src/turtlebot_rrt.cc:163:36: error: expected primary-expression before ‘>’ token
std::uniform_real_distribution<> x(-map_width, map_width);
^
/home/shreyas/catkin_ws/src/turtlebot_rrt/src/turtlebot_rrt.cc:163:38: error: ‘x’ was not declared in this scope
std::uniform_real_distribution<> x(-map_width, map_width);
^
/home/shreyas/catkin_ws/src/turtlebot_rrt/src/turtlebot_rrt.cc:164:10: error: ‘uniform_real_distribution’ is not a member of ‘std’
std::uniform_real_distribution<> y(-map_height, map_height);
^~~~~~~~~~~~~~~~~~~~~~~~~
/home/shreyas/catkin_ws/src/turtlebot_rrt/src/turtlebot_rrt.cc:164:10: note: suggested alternative: ‘uniform_int_distribution’
std::uniform_real_distribution<> y(-map_height, map_height);
^~~~~~~~~~~~~~~~~~~~~~~~~
uniform_int_distribution
/home/shreyas/catkin_ws/src/turtlebot_rrt/src/turtlebot_rrt.cc:164:36: error: expected primary-expression before ‘>’ token
std::uniform_real_distribution<> y(-map_height, map_height);
^
/home/shreyas/catkin_ws/src/turtlebot_rrt/src/turtlebot_rrt.cc:164:38: error: ‘y’ was not declared in this scope
std::uniform_real_distribution<> y(-map_height, map_height);
^
/home/shreyas/catkin_ws/src/turtlebot_rrt/src/turtlebot_rrt.cc:164:38: note: suggested alternative: ‘yn’
std::uniform_real_distribution<> y(-map_height, map_height);
^
yn
/home/shreyas/catkin_ws/src/turtlebot_rrt/src/turtlebot_rrt.cc:166:28: error: ‘gen’ was not declared in this scope
random_point.first = x(gen);
^~~
/home/shreyas/catkin_ws/src/turtlebot_rrt/src/turtlebot_rrt.cc: In member function ‘std::vector<geometry_msgs::PoseStamped_<std::allocator > > turtlebot_rrt::RRTPlanner::BuildPlan(int, const PoseStamped&, const PoseStamped&)’:
/home/shreyas/catkin_ws/src/turtlebot_rrt/src/turtlebot_rrt.cc:394:34: error: ‘tf’ has not been declared
pos.pose.orientation = tf::createQuaternionMsgFromYaw(0);
^~
turtlebot_rrt/CMakeFiles/turtlebot_rrt.dir/build.make:62: recipe for target 'turtlebot_rrt/CMakeFiles/turtlebot_rrt.dir/src/turtlebot_rrt.cc.o' failed
make[2]: *** [turtlebot_rrt/CMakeFiles/turtlebot_rrt.dir/src/turtlebot_rrt.cc.o] Error 1
CMakeFiles/Makefile2:824: recipe for target 'turtlebot_rrt/CMakeFiles/turtlebot_rrt.dir/all' failed
make[1]: *** [turtlebot_rrt/CMakeFiles/turtlebot_rrt.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j8 -l8" failed

"

Is there any way to solve this? Is there a way to run packages built for ROS Kinetic on ROS Melodic?

Would love the opinion of the author of this package as well!

Thanks in Advance!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions