Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add backward compatibility patch for indigo #551

Merged

Conversation

v4hn
Copy link
Contributor

@v4hn v4hn commented Jul 18, 2017

At the last developer meeting we agreed to allow patches that support to compile the kinetic-devel branch on ROS indigo.

I worked on that on the side and actually it's quite possible by now if you know what you're doing.
The only problems that are left are the API change in ros_control and ros/robot_model#210 .

This patch adds preprocessor magic to support the old ros_control API.

@v4hn v4hn force-pushed the pr-kinetic-roscontrol-indigo-compat branch from 4832453 to 1a923c1 Compare July 18, 2017 18:29
ros_control changed their interface after indigo
@davetcoleman
Copy link
Member

Cool

@davetcoleman davetcoleman merged commit 395415f into moveit:kinetic-devel Jul 21, 2017
@hartmanndennis
Copy link
Contributor

What dependencies have to be changed for this to work? I tried building it with ROS indigo and needed to change geometric_shapes to kinetic-devel version. It seems that I also need a new fcl version and maybe octomap. Are there any other dependencies that need to be updated?

@v4hn
Copy link
Contributor Author

v4hn commented Aug 1, 2017

First of all, nobody said it would be simple to cross-compile, right. :)
You're on the right track.

I have the setup working on our PR2, basically you need ompl, fcl and octomap within the same workspace. Due to a problem with OMPL, you have to remove the system installation of the package (or try to use a trick)
Additionally you need the kinetic versions of geometric_shapes and srdfdom. I'm not sure if anything else was needed right now.

I'll put it on my todo list to describe the setup properly, but I'm overly busy for the next two months - If you manage to get it working, we would very much welcome your contribution!

@hartmanndennis
Copy link
Contributor

I got it to build and run the tests successfully by doing the following steps:

  • get the docker image moveit/moveit:indigo-source
  • checkout kinetic-devel in src/moveit
  • checkout kinetic-devel in src/moveit_msgs
  • apt-get remove ros-indigo-fcl
  • apt-get remove ros-indigo-ompl
  • clone geometric_shapes:kinetic-devel
  • clone warehouse_ros:jade-devel
  • clone robot_model:indigo-devel
  • build and install fcl 0.5
  • build and install ompl 1.3.1

The default srdfdom in the docker workspace with branch indigo-devel works fine.
robot_model is fixed in indigo-devel, so you shouldn't need it in your workspace anymore after the next indigo release.
octomap indigo-release is fine.

@v4hn
Copy link
Contributor Author

v4hn commented Aug 3, 2017

Thanks for the concise summary @hartmanndennis and congratulations on getting it to work! :)

Let's wait with more official documentation until my robot_model patch has been released&synced on indigo.

octomap indigo-release is fine.

I don't remember the details at the moment, but I could have sworn there where some shared_ptr related issues when I last tried it...

@davetcoleman
Copy link
Member

@hartmanndennis could you make a subpage similar to this one that is linked from the source install page that advertises this "advanced" usage? Could be useful for others as well as you in the future if you ever have to do it all again.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants