Can't ROS version compatibility issue for packages be resolved forever?
I have been running ROS Melodic on Ubuntu 18.04. As it is the latest version of ROS and ROS does not allow the packages built in previous versions, I am really stuck in my project development. I am referring some very nice books and their ROS packages to understand ROS as a beginner, but the books and the packages are created sometime back and hence they have ROS Indigo/Kinetic based data. As a result, I am limited to theoretical reference only. I am referring the books that are listed as Standard Books for ROS.
For example, currently I am referring the Chapter 9 of the book ROS Robotics Projects that has Chefbot working as autonomous robot. The robot is developed based on ROS Kinetic and hence are its ROS packages. When I try to source the workspace using those packages, I end up with this error:
shaunak@robokits:~/catkin_ws$ rosdep install --from-paths src --ignore-src --rosdistro=melodic -y
ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
chefbot_bringup: Cannot locate rosdep definition for [depthimage_to_laserscan]
chefbot_gazebo: Cannot locate rosdep definition for [create_node]
chefbot_description: Cannot locate rosdep definition for [create_description]
I also tried rosdep install --from-paths src --ignore-src --rosdistro=melodic -y -r
to ignore the errors and initiate catkin_make_isolated --force-cmake
(I am not using catkin_make
as it does not work for other packages) but it throws an error of not being able to process the package.
So I kindly request the community members to work in a direction which will remove this ROS version compatibility issue. I do not expect the solution to be robust as of now, but some patch development should be initiated that is what I suggest. I am keen and ready to be the part of this process provided some guidelines are given regarding the versioning of the packages.
- Shaunak Agastya Vyas (TINU)
You should still be able to build the package even if it's not written specifically for melodic. Just building the package from source should be fine. Being said it doesn't mean you won't have any issues. But most of the time you should be alright.
Just to reiterate @l4ncelot's point:
This is not actually true. It's perfectly possible to build packages from source, in a Catkin workspace.
If you can post about an actual problem with a ..
.. specific package, we can see whether we can help you solve that. Right now this question is too ambiguous and not something we can do something about.
Also:
This is a problem with those books, not necessarily with ROS. We ..
.. cannot retard or delay the development of ROS because of compatibility concerns with books that may be available unfortunately.
@gvdhoorn
kindly see the edited question.
there are no "standard books for ROS".
The wiki page you link to is just a page listing some of the books available to the general public. They are not endorsed or ..
.., reviewed or recommended in any way.
The wiki is editable by anyone with an account. After registering, you could also add a book to that list.
As to the pkgs that
rosdep
can't find: those all appear to be pkgs related to the Turtlebot 2, which indeed haven't been released yet. See #q305162 for another recent question about that.What you can try is to place those pkgs in your Catkin workspace and to build them from source.