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

OS X Yosemite (10.10) Rosdep entries for vtk and gazebo2 #6334

Closed
wants to merge 4 commits into from
Closed

OS X Yosemite (10.10) Rosdep entries for vtk and gazebo2 #6334

wants to merge 4 commits into from

Conversation

JeremyCade
Copy link
Contributor

Homebrew VTK Update

Recent updates to the homebrew/science/vtk brew have created issues for ROS Indigo install on OSX.
This can be fixed by removing the --python and --qt options and replacing them with --with-qt on the vtk homebrew dependency.

ROS & Gazebo

As noted on the Which combination of ROS/Gazebo versions to use page, ROS Indigo is only compatible with the Gazebo 2.x branch.

@@ -102,7 +102,7 @@ freetype:
gazebo:
osx:
homebrew:
packages: [gazebo]
packages: [gazebo2]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The problem with this change is that hydro still needs gazebo1.x. If I merge this then anyone who resolves the key "gazebo" on OS X will get gazebo2, even people trying to install for hydro.

Unfortunately there are not a lot of good options here, but we can:

  • Have packages update their dependencies to be gazebo2 instead of gazebo in Indigo
  • Have rosdep install one or the other based on the ROS distro

Neither are good solutions since the first requires changing several packages and maintaining at least two rosdep rules for gazebo. And the second one is also not great mostly because rosdep does not support that type of rule, where one thing is installed for one ROS distro and another for a different one.

I think the "right" thing to do is to have another rosdep rule "gazebo2" which points to gazebo2 in Homebrew. Then we should update the packages in ROS Indigo which directly depend on gazebo to directly depend on gazebo2 instead. This shouldn't be too bad since most people get to gazebo through one of the gazebo_ros_pkgs packages.

Regardless of the final solution I don't think merging this change as-is makes sense.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I edited the above comment; apparently I'm having a hard time with words today.

@vrabaud
Copy link
Member

vrabaud commented Feb 21, 2015

@wjwwood , what should be do with that one ?

@wjwwood
Copy link
Member

wjwwood commented Feb 23, 2015

I should figure out what should be done 😛. I don't know. Merging this will cause problems for people using ROS hydro on OS X, but not merging it will cause problems for Indigo.

@dirk-thomas
Copy link
Member

I think we have to make a call on this. Either decide to "break" on one distro (where I would prefer to break Hydro and make it work well on Indigo) or do the necessary changes to support both.

@wjwwood
Copy link
Member

wjwwood commented Mar 25, 2015

I have a plan which allows users to pick different dependencies based on the Homebrew tap they choose, but I haven't had time to implement it.

Basically we'd make the rosdep rule for gazebo resolve to the gazebo_for_ros Homebrew formula. When installing hydro you'd "tap" the ros/hydro-deps tap which contains a version of the gazebo_for_ros formula which depends on gazebo, but the ros/indigo-deps tap will have a different version of the gazebo_for_ros formula which depends on gazebo5. This would be applied to all the affected formula. This way rosdep always resolves to the same key, but then we can change what the key ends up installing based on which Homebrew tap the user selects. It still doesn't allow a side by side setup with Hydro and Indigo, but at least people can choose.

This will take quite some work to implement, so I'm not sure when I'll get to it.

/cc @scpeters

@scpeters
Copy link
Contributor

Sounds reasonable. There are separate formula for each gazebo version (gazebo for 1.9, gazeboN for each release after) but they cannot be brew linked at the same time.

@dirk-thomas
Copy link
Member

Should we aim to address this before Jade is being released?

@scpeters
Copy link
Contributor

scpeters commented May 4, 2015

We added new rosdep keys for gazebo5 in jade. So I think this is currently just a conflict between hydro / indigo, which have the same rosdep key for different versions of gazebo.

@wjwwood
Copy link
Member

wjwwood commented May 4, 2015

Yeah, this shouldn't be trouble for Jade. I was mistaken above about gazebo5 and indigo, but this still applies for ogre which is 1.7 in hydro and 1.8/9 in indigo and jade.

@dirk-thomas
Copy link
Member

Can we close this and if necessary convert it into a ticket?

@wjwwood
Copy link
Member

wjwwood commented Jul 13, 2015

Closing in favor of: #8912

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.

5 participants